gnuplot set y2axis варьируется от colum - PullRequest
0 голосов
/ 23 ноября 2018

У меня есть следующий файл данных:

# Throughput(op/sec)  Num_tr   Bytes_sent(sec)
     3000               10        12000  
      ...               ...         ...

Где пропускная способность - это число операций в секунду, которое может выполнить клиент, Num_tr - количество потоков, а bytes_sent - количество отправленных байтов.в секунду.

Теперь я могу построить график зависимости потока от пропускной способности, получив, например, 10 на моей оси x и 3000 на моей оси y.Однако, поскольку значения Bytes_sent и Throughput строго коррелируют, я хотел также использовать команду y2axis, чтобы показать байты, отправленные на том же графике.Положение тиков должно быть таким же, но значение y2tics должно соответствовать ($ 3 / $ 1) * значению y2tick, определенному в диапазоне (1000, 2000, 3000)

set yrange [0:18000]
set ytics nomirror
set y2label 'Throughput (op/sec)'
set y2tics 5 
set y2label 'Bytes_sent'
set y2range [0:18000 *($3 / $1)]  <---------------- 
plot "data.dat" index 0 using 2:1:xtic(2) ...

Есть идеи?

Заранее спасибо

1 Ответ

0 голосов
/ 23 ноября 2018

У вас есть два варианта

(1) Вы можете связать y2 с y1, используя команду "set link" и предоставив уравнения, связывающие отправленные байты и пропускную способность

total_time = <you know this, I take it?>
throughput(bytes_sent) = bytes_sent / total_time
bytes(throughput) = throughput * total_time    
set link y2 via throughput(y) inverse bytes(y)
set ytics 5 nomirror
set y2tics nomirror   # range will exactly track y1
plot "data.dat" index 0 using 2:1

Я не знаюЯ не знаю, что вы хотели использовать с помощью «xtics (1)», но это не может быть правильным, поскольку столбец 1 используется для значений y, а не значений x.

(2) Вы можете построить их независимо

plot "data.dat" index 0 using 2:1 axes x1y1, \
     "data.dat" index 0 using 2:(thoughput($1)) axes x1y2

В этом случае вам не нужно связывать оси или задавать диапазоны явно.На графике будет две линии, но если корреляция будет идеальной, они будут наложены.

...