[Matlab] Wykres sinusa

Mathematica, Matlab, Statistica, LaTeX i wszelkiego rodzaju oprogramowanie przydatne matematykowi w pracy. Miejsca w sieci poświęcone zagadnieniu.
Kondrus
Użytkownik
Użytkownik
Posty: 89
Rejestracja: 2 lut 2010, o 10:35
Płeć: Mężczyzna
Lokalizacja: Gliwice
Podziękował: 3 razy

[Matlab] Wykres sinusa

Post autor: Kondrus »

Cześć,

Musze wykonać zadanie które polega na stworzeniu wykresu sinusa na przedziale od 0 do 8pi. Liczba elementów na osi "X" ma wynosić 10000. Kolejnym krokiem jest stopniowe zmniejszanie liczby elementów w celu uzyskania "wieloboku" zamiast "ładnego" sinusa.

Wymyśliłem następujący kod:
a=[1:pi/10000:8*pi]; //zakres
y=sin(a); //sinus
i=[1:4]; //co czwarty element (76817 to pi/1000 * 8)
n=y(i);
plot(n) //wykres


Poniżej wykres dla co 4 elementu z 76817


Poniżej wykres dla co 4000 elementu z 76817


Wszystko by się zgadzało... Jednak proszę spojrzeć na oś X. Zakres sinusa jest inny. Wydaje mi się że te dwa powyższe wykresy nie są sobie równe. A ideą tych dwóch wykresów jest ukazania przejścia z stanu analogowego na stan cyfrowy... Czy może ktoś pomóc?
Awatar użytkownika
pyzol
Użytkownik
Użytkownik
Posty: 4329
Rejestracja: 26 kwie 2010, o 11:39
Płeć: Mężczyzna
Lokalizacja: Nowa Ruda
Podziękował: 5 razy
Pomógł: 929 razy

[Matlab] Wykres sinusa

Post autor: pyzol »

Powiedz mi dlaczego zaczynasz od 1, a nie od 0?
Jeśli iksów ma być 10000, to raczej powinieneś mieć: 0:8*pi/10000:8*pi.
Zobacz też co to linspace
help linspace o ile dobrze pamiętam. Wydaje mi się, że będzie wygodniejsze.-- 18 mar 2013, o 20:08 --Jeszcze jedno nie plot(n), tylko plot(a,y).
Kondrus
Użytkownik
Użytkownik
Posty: 89
Rejestracja: 2 lut 2010, o 10:35
Płeć: Mężczyzna
Lokalizacja: Gliwice
Podziękował: 3 razy

[Matlab] Wykres sinusa

Post autor: Kondrus »

Próbowałem:

Kod: Zaznacz cały

a=linspace(1,8*pi,76817);
y=sin(a);
i=[1:3900:76817];
n=y(i);
plot(n)
Wynik taki sam jak powyżej, ilość iksów zmienia się...-- 18 mar 2013, o 21:51 --

Kod: Zaznacz cały

a=linspace(1,8*pi,20);
y=sin(a);
plot(a,y)

Poprawnie, wystarczy tylko zmieniać liczbę N elementów na danym zakresie przy użyciu linspace.
Jeden minut tego wszystkiego iż zmniejszanie liczby elementów jest nie liniowe. Proszę zobaczyć dla n=10...
Awatar użytkownika
pyzol
Użytkownik
Użytkownik
Posty: 4329
Rejestracja: 26 kwie 2010, o 11:39
Płeć: Mężczyzna
Lokalizacja: Nowa Ruda
Podziękował: 5 razy
Pomógł: 929 razy

[Matlab] Wykres sinusa

Post autor: pyzol »

Nie zobaczę, bo nie mam matlaba.
ODPOWIEDZ