Zaloguj się
Blog na Matlab.pl
Forum polskich użytkowników
 
UŻYTKOWNICY GRUPY PROFIL Zaloguj się, by sprawdzić wiadomości FAQ
 



Napisz nowy temat     Odpowiedz do tematu Zobacz poprzedni temat :: Zobacz następny temat

Odczyt danych + wykres
Forum MATLAB Strona Główna-> MATLAB
Post Wysłany: 21 Października 2016, Pią 8:43 pm Temat postu: Odczyt danych + wykres Odpowiedz z cytatem
 
AUTOR:
Skipper11
Początki pisania


Dołączył: 17 Paź 2016
Posty: 7


Ogląda profil użytkownika Wyślij prywatną wiadomość
Witam,
Mam następujące zadanie:
"Znormalizować sygnał przygotowany przez prowadzącego, aby jego
wartości znajdowały się w przedziale <-1, 1>, wyświetlić sygnał przed i
po jego modyfikacji i zapisać z powrotem do pliku (innego, aby nie
nadpisywać zawartości oryginalnego pliku). Plik z zarejestrowanym
sygnałem znajduje się na stronie kursu, a proces normalizacji powinien
być zapisany jako funkcja. Przydatne będą polecenia load i save (przy
zapisie do pliku konieczne będzie użycie parametru ‘-ascii’, aby dane
były zapisane w formie możliwej do odczytania przez człowieka)."
I na razie chce wczytać tylko poprzednie wartości i na ich podstawie zrobić wykres, ale nic mi się nie pojawia-białe pole. A wygląda to tak:
Kod:
A=load('signal.dat');
dlugosc=length(A);
x=0:0.1:0*1*dlugosc-(0*1*dlugosc);
plot(x,A);

Ma ktoś może pomysł co robię źle?
Mam wrażenie, że te wartości źle podaje.


 

Post Wysłany: 23 Października 2016, Nie 10:20 am Temat postu: Odpowiedz z cytatem
 
AUTOR:
kasztel
Może pisać książki


Dołączył: 10 Maj 2007
Posty: 1032
Skąd: Uniwersytet Warszawski


Ogląda profil użytkownika Wyślij prywatną wiadomość Odwiedź stronę autora
Co twoim zdaniem ma robić linijka kodu:
x=0:0.1:0*1*dlugosc-(0*1*dlugosc);
zamień ją na x=1:dlugosc
to przy najmniej powinno się coś wyświetlić

RaK


 

Post Wysłany: 24 Października 2016, Pon 6:02 pm Temat postu: Odpowiedz z cytatem
 
AUTOR:
Skipper11
Początki pisania


Dołączył: 17 Paź 2016
Posty: 7


Ogląda profil użytkownika Wyślij prywatną wiadomość
Po prosu w moim zamyśle miało to próbkować co 0.1,w sumie jak patrzę to tam zamiast "*" miało być ".". No i chyba za mały okres próbkowania.
Okej, tak jak mówisz działa.
Tylko już teraz wyświetla mi wartości z zakresu <-1;1>, więc trochę nie wiem po co normalizować. Wygląda to tak o:
http://wstaw.org/w/4c3G/
Aha, żeby jednak wykonać proces normalizacji to muszę sobie utworzyć, dwie nowe macierze, tak?
I jedną potraktować jako wektor wartości średnich, powiedzmy:
Kod:
wartosc_srednia=(1/dlugosc)*(sum(A));

No i teraz znormalizowaną wartość obliczyć jako różnicę pomiędzy początkowymi wartościami, a wartością średnią:
Kod:

normalizacja
(dlugosc)=0;
for
i=0:dlugosc
    normalizacja
(i)=A(i)-wartosc_srednia(i);
end
    

Czy zupełnie źle myślę? ;x


 

Post Wysłany: 27 Grudnia 2016, Wto 8:46 pm Temat postu: Odpowiedz z cytatem
 
AUTOR:
Skipper11
Początki pisania


Dołączył: 17 Paź 2016
Posty: 7


Ogląda profil użytkownika Wyślij prywatną wiadomość
Odkopuje przed sesją.
Tamto chyba podejście było bez sensu.
Czy mogę do tego użyć funkcji axis?
Kod:
file=load('sygnal.dat');
dlugosc=length(file);
[
m,n] = size(file);
plot(file);
axis([0, dlugosc, -1, 1]);

No i mi rysuje to w tym zakresie, ale dość słabo wygląda tak o:
[img]https://zapodaj.net/ab60a00bc7c9d.jpg.html[/img]
Ja wiem, że to tylko zmienia osie, ale na przykładzie, na którym udało mi się wzorować to jednak wyszło okej.
A to robione na podstawie tego:
https://www.mathworks.com/help/matlab/creating_plots/change-axis-limits-of-graph.html


 

Forum MATLAB Strona Główna-> MATLAB
Wyświetl posty z ostatnich:   

Napisz nowy temat     Odpowiedz do tematu Zobacz poprzedni temat :: Zobacz następny temat

Wszystkie czasy w strefie CET (Europa)

Skocz do:  

Statystyki forum:



Od dnia 08.06.2006 forum odwiedzano 34044014
Najwięcej użytkowników 266 było obecnych 19 Lutego 2015, Czw 7:03 pm

Aktualnie online:




Najnowsze posty na forum:
Odwracanie macierzy, pomocy  (20 Styczenia 2017, Pią 9:20 pm)
[Matlab] odwracanie macierzy  (20 Styczenia 2017, Pią 9:17 pm)
Zamiana zmiennych globalnych na zmienne lokalne  (20 Styczenia 2017, Pią 4:57 pm)
[Scilab] interpolacja wielomianem Hermite'a  (19 Styczenia 2017, Czw 8:24 pm)
Metoda Gaussa-Jordana  (19 Styczenia 2017, Czw 7:20 pm)
Obliczenia za pomocą punktu KKT/Mnożnik Lagrange'a  (19 Styczenia 2017, Czw 6:54 pm)
Prąd kondensatora pobierany i oddawany do sieci trójfazowej  (19 Styczenia 2017, Czw 3:14 pm)
2 Zadania, proszę o pomoc..  (19 Styczenia 2017, Czw 2:59 pm)
Monotoniczność funkcji i przedziały wypukłości/wklęsłości  (19 Styczenia 2017, Czw 1:11 am)
Wymagania tworzonej aplikacji  (18 Styczenia 2017, Sro 5:24 pm)
Twoje prawa:
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Nie możesz ściągać plików na tym forum