2013-08-08 4 views
7

Я просмотрел вопросы, но до сих пор не могу заставить это работать.gnuplot несколько строк с временем по оси X

Мой набор данных, как это:

заявления
[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 

Мои GNUPLOT (только начал использовать для этого данные):

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 

Я получаю следующее сообщение об ошибке:

Need full using spec for x time data 

Я пробовал автомасштабировать x, но я немного потерян, любая помощь будет оценена.

ответ

2

Ваша команда сюжет выглядеть вместо этого:

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

Время данных требует, чтобы вы всегда указывать все столбцы, которые будут использоваться. (Обратите внимание также скорректированной timefmt):

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%' 

Причина этого в том, что timefmt может также содержать пробелы, так что данные, используемые для оси времени могут поступать из двух столбцов. Рассмотрим следующий измененный файл данных:

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 

заговорщической команды для этого формата:

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%' 

Чтобы избежать путаницы, всегда требуется, чтобы для временных данных все столбцы, используемые в стиле черчения (здесь with lines) задаются явно с помощью инструкции using.

Смежные вопросы