2012-05-30 13 views
6

Próbuję utworzyć ułożone histogram z następującymi danymi:Korzystanie gnuplot dla ułożone histogramy

8.01 1 5 1 
8.02 3 5 1 
8.03 4 4 1 
8.04 3 4 1 
8.05 1 2 1 

próbowałem dostosować skrypt od 4 przykładu i w tej chwili używam to:

set title "Test" 
set key invert reverse Left outside 
set key autotitle columnheader 
set style data histogram 
set style histogram rowstacked 
set style fill solid border -1 
set boxwidth 0.75 

plot 'test.dat' using 2:xtic(1), '' using 2 title 'Col1', '' using 3 title 'Col2', '' using 4 title 'Col3' 

Część, którą skopiowałem, o której nie mam pewności, to using 2:xtic(1). Wiem, że to sprawia, że ​​używa wartości xtic jako pierwszej kolumny, co jest tym, czego chcę. Ale nie wiem, co reprezentuje część using 2. To jest zrzut ekranu co skrypt produkuje:

enter image description here

Wszystko jest w porządku na zdjęcie, z wyjątkiem czerwonego paska, które nie powinny tam być. Czy ktoś mógłby mi wyjaśnić, dlaczego się pojawia i jak się go pozbyć?

Odpowiedz

10

using 2 oznacza, że ​​gnuplot użyje drugiej kolumny z pliku dla danych, które tworzy. Jeśli wykreślasz dane x w porównaniu z danymi y, komendą jest plot data using 1:2, jeśli dane x znajdują się w kolumnie 1, a dane y znajdują się w kolumnie 2. plot using 2 wykreśli dane z kolumny 2 na osi y, a dla każdego punktu danych x Współrzędna zostanie zwiększona o 1.

Zauważysz, że zielone i czerwone paski mają ten sam rozmiar: oba używają kolumny 2. Jeśli nie chcesz, aby pojawił się pierwszy (czerwony) pasek, możesz zmienić komenda działka na

plot 'test.dat' using 2:xtic(1) title 'Col1', '' using 3 title 'Col2', '' using 4 title 'Col3' 

za pomocą tego polecenia, xtic etykiety pozostanie taka sama, a pierwsza bar nie będzie już tam być. Zauważ, że kolory dla danych zmienią się za pomocą tego polecenia, ponieważ pierwsza rzecz naniesiona będzie czerwona, druga zielona i trzecia niebieska.