Kolory wykresu

Jeśli masz coś do powiedzenia w sprawie LabVIEW napisz. Tutaj są tematy, których nie można uściślić do innych działów.
dadrian
Posty: 4
Rejestracja: 17 kwie 2018 23:09
Wersja środowiska: LabVIEW 2017

Kolory wykresu

Post autor: dadrian » 17 kwie 2018 23:21

Witam wszystkich, stawiam pierwsze kroki w środowisku LabVIEW i mam do was pytanie odnośnie zwykłego Waveform Graph, na którym umieszczone mogą być 4 wykresy, a mianowicie, czy jest możliwość przypisania konkretnego koloru do danego wykresu?
W załączniku wysyłam screen małej częsci programu i chodzi o to, aby dla danego pliku z danymi wykres rysował się zawsze w ustalonym kolorze. Aktualnie kolory zależą od Merge signals i tak pierwsze dane rysują się na biało, a drugie na czerwono, ale wystarczy, że wyłączę pierwsze dane to drugie rysują się znów na biało. Jest możliwość przypisania konkretnym danym konkretnego koloru w jakim mają się rysować?
Wiem, że dość chaotycznie napisane, ale nie mam pojęcia jak to inaczej wytłumaczyć.
wykres.png

apb
Posty: 14
Rejestracja: 20 lis 2017 11:59
Wersja środowiska: LabVIEW 2017

Re: Kolory wykresu

Post autor: apb » 18 kwie 2018 00:22

Możesz skorzystać z property node:

PPM na Waveform Graph->Create->Property Node->Plot->Plot Color
Wcześniej musisz wybrać dla której krzywej ustawiasz kolor (property node "Active Plot").

W zależności od ilości krzywych odpowiednio zmieniasz kolory.

Kolejny sposób to zawsze wyświetlasz 4 wykresy i tylko ukrywasz te niepotrzebne (property node "Plot Visible").

dadrian
Posty: 4
Rejestracja: 17 kwie 2018 23:09
Wersja środowiska: LabVIEW 2017

Re: Kolory wykresu

Post autor: dadrian » 18 kwie 2018 00:52

Czy mógłbyś wyjaśnić jak mam to połączyć i gdzie? Bo nie mam zielonego pojęcia co mam z tymi dwoma bloczkami zrobić i gdzie wybrać ten kolor ;/

apb
Posty: 14
Rejestracja: 20 lis 2017 11:59
Wersja środowiska: LabVIEW 2017

Re: Kolory wykresu

Post autor: apb » 18 kwie 2018 01:02

Poszukaj odpowiedzi w pomocy dostępnej w LabVIEW.
PPM na property node->Help for...

dadrian
Posty: 4
Rejestracja: 17 kwie 2018 23:09
Wersja środowiska: LabVIEW 2017

Re: Kolory wykresu

Post autor: dadrian » 18 kwie 2018 01:14

Albo nie potrafię tego zrobić, albo to nie rozwiązuje mojego problemu niestety, bo po odznaczeniu jednych danych, a zaznaczeniu drugich, kolor pozostaje bez zmian.

Awatar użytkownika
dajpanspokój
Posty: 145
Rejestracja: 05 lis 2015 08:15
Wersja środowiska: LabVIEW 2016
Has thanked: 4 times
Been thanked: 5 times

Re: Kolory wykresu

Post autor: dajpanspokój » 18 kwie 2018 10:09

Chodzi o to ze jak wyswietlaja sie 3 wykresy R, B, W z kolorami czerwony, niebieski, bialy, to W musi byc zawsze bialy niezaleznie czy to jest trzeci plot, czy pierwszy (bo R i B nie ma)?
Nie ma na to jakiejs prostej rady, to troche tak jak prosic monitor komputera, zeby zmienil jasnosc w zaleznosci, ktora zakladka w przegladarce jest otwarta...

Przed ustawieniem kolorow, musisz wiedziec ktory wykres jest wyswietlony, a ktory nie, np mozesz zrobic liste boolean. Majac druga liste kolorow odpowiadajacym poszczegolnym wykresom, mozesz ustawic nowa liste kolorow dla kazdego wykresu, ktory jest na liscie jako True.
kolory.png
Załączniki
kolory.vi
(60.32 KiB) Pobrany 31 razy
Obrazek

dadrian
Posty: 4
Rejestracja: 17 kwie 2018 23:09
Wersja środowiska: LabVIEW 2017

Re: Kolory wykresu

Post autor: dadrian » 18 kwie 2018 18:50

Dokładnie chodziło o to, żeby każdy bloczek z czytaniem z pliku miał określony kolor na wspólnym wykresie. Jeśli włączę pierwszy bloczek wykres powinien mieć np. kolor biały, ale gdy go wyłączę i włączę bloczek trzeci to kolor wykresu powinien być zielony, a nie z powrotem biały.
Niestety rozwiązanie wyżej nie podziałało na większej ilości danych i program się wysypywał, ale udało mi się zrobić to po swojemu i teraz pytanie, czy ktoś jest mi w stanie wyjaśnić co ja zrobiłem, że to zaczęło działać tak jak oczekiwałem?
Program działa teraz dobrze, ale nie mam zielonego pojęcia dlaczego. Dokładnie chodzi mi o części w czerwonej ramce.
program.png

apb
Posty: 14
Rejestracja: 20 lis 2017 11:59
Wersja środowiska: LabVIEW 2017

Re: Kolory wykresu

Post autor: apb » 19 kwie 2018 10:10

Obecnie zawsze na wykresie wyświetlasz wszystkie krzywe, w przypadku ustawienia wartości False nie podajesz żadnych danych dla danej krzywej, więc teoretycznie się ona nie wyświetla. Rozwiń legendę i zmień kolory krzywych - zobaczysz, że odpowiednie kolory były tam już wcześniej ustawione, Set Waveform Attribute nie ustawia koloru. Możesz usunąć to SWA, nie jest do niczego potrzebne.

Wróć do rozwiązania zaproponowanego przez @Dajpanspokój, musi działać poprawnie jeśli jest dobrze zaimplementowane.

Awatar użytkownika
dajpanspokój
Posty: 145
Rejestracja: 05 lis 2015 08:15
Wersja środowiska: LabVIEW 2016
Has thanked: 4 times
Been thanked: 5 times

Re: Kolory wykresu

Post autor: dajpanspokój » 19 kwie 2018 10:18

Hmm, tak naprawde to wystarczy ci ten pierwszy bloczek, nie musisz przypisywac zadnego koloru.
Capture.PNG
Capture.PNG (1.24 KiB) Przejrzano 989 razy
Ten niebieski kabel to jest dynamic data. Jak jest puste i wchodzi do Merge Signal.vi, to w ogole nie jest dodawany na wyjscie. W twoim przypadku jesli nie zaznaczysz zeby dane byly czytane, to na wyjsciu case structure masz puste dynamic data i po mergu bedziesz mial mniejsza ilosc sygnalow.

Natomiast! Jak zamienisz na waveform, to robi sie z tego klaster z pustymi danymi. Ale nie pusty klaster, wiec jak mergujesz to jest dodawany na wyjscie. Dlatego jak zrobisz z tego array size (zobacz vi w zalaczniku), to zawsze bedzie 4, nawet jak nie zaznaczysz zadnych danych, bo bedziesz mial 4 klastery z pustymi danymi.

I teraz jak wszystko wyswietlasz na grafie to puste dane sa wyswietlane jako pusty plot, ktory zajmuje swoj kolejny kolor. 4 ploty, z ktorych niektore sa puste, ale maja przypisany ten sam kolor.

I tak naprawde to twoje rozwiazanie jest lepsze od mojego, bo mozesz dodawac nowe dane do wykresu, bez przymusu okreslania ktory kolor ma byc jaki, a kolory zawsze beda te same :ymapplause:
Załączniki
kolory convertion.vi
(184.57 KiB) Pobrany 29 razy
Obrazek

ODPOWIEDZ