2013-08-08 18 views
7

Soruları gözden geçirdim, ancak yine de bu işe yaramıyor.gnuplot Time on X ekseni ile çoklu satırlar

Benim veri seti şu şekildedir:

[date] , [%cpu] , [mem] 
23:00:39 , 21.9 , 2.1 
23:00:44 , 21.8 , 2.1 
23:00:49 , 21.8 , 2.1 
23:00:54 , 21.8 , 2.1 
23:00:59 , 21.7 , 2.1 

Benim Gnuplot ifadeleri edilir (sadece bu veriler için kullanmaya başladıktan):

set timefmt "%H:%m:%s" 
set xdata time 
set datafile sep ',' 
plot '/tmp/info' using 2 title 'cpu' with lines, '/tmp/info' using 3 title 'memory%' with lines 

alıyorum aşağıdaki hata:

Need full using spec for x time data 

Otomatik ölçeklemeyi x denedim, ama biraz kayboldum, herhangi bir yardım takdir edilecektir.

cevap

2

Kişisel arsa komutu artık şöyle bak:

plot '/tmp/info' using 1:2 title 'cpu' with lines, '/tmp/info' using 1:3 title 'memory%' with lines 
5

Zaman verileri her zaman kullanılacak tüm sütunlar belirtmek gerekir. (Aynı zamanda düzeltilmiş timefmt Not):

set timefmt "%H:%M:%S" 
set xdata time 
set datafile sep ',' 
set style data lines 
plot '/tmp/info' using 1:2 title 'cpu', '' using 1:3 title 'memory%' 

Bunun nedeni, timefmt da boşluk içerebilir, zaman ekseni için kullanılan veriler, iki sütun gelebilir, böylece.

23:00:39 06/08/13 21.9 2.1 
23:00:44 06/08/13 21.8 2.1 
23:00:49 06/08/13 21.8 2.1 
23:00:54 06/08/13 21.8 2.1 
23:00:59 06/08/13 21.7 2.1 

bu biçim için komplo komutları şunlardır: Aşağıdaki değiştirilmiş veri dosyasını düşünün

set timefmt "%H:%M:%S %d/%m/%Y" 
set xdata time 
set format x "%H:%M:%S" 
set style data lines 
plot 'mydata.dat' using 1:3 t 'cpu', '' using 1:4 t 'memory%' 

Karışıklığı önlemek için, bu her zaman gerekli olduğunu zaman verileri için buraya (çizim stili tarafından kullanılan tüm sütunları with lines) using bildirimi ile açıkça verilir.