Подтвердить что ты не робот

Gnuplot, разделить ось y на две части

У меня есть гистограмма с небольшими значениями и некоторыми очень большими значениями. Как я могу разбить ось y на две части?

ИЗМЕНИТЬ:

enter image description here

Пример gnuplot:

set style histogram columnstacked 
set style data histograms
set key autotitle columnheader
plot for [i=2:6] 'test.dat' using i

test.dat:

action device1 device2 device3
load    200 203 190 2 4
process 3 9 6 7 3
save    4 2 7 4 3
4b9b3361

Ответ 1

Мой ответ основан на примере и комментарии этого веб-сайта. В сущности, вы ищете сломанную ось y, которая может быть достигнута с помощью опции multiplot:

reset
unset key
bm = 0.15
lm = 0.12
rm = 0.95
gap = 0.03
size = 0.75
kk = 0.5 # relative height of bottom plot
y1 = 0.0; y2 = 15.0; y3 = 180.0; y4 = 220.0

set style histogram columnstacked 
set style data histograms
set key autotitle columnheader
set style fill solid 1.0 border -1

set multiplot
set border 1+2+8
set xtics nomirror
set ytics nomirror
set lmargin at screen lm
set rmargin at screen rm
set bmargin at screen bm
set tmargin at screen bm + size * kk

set yrange [y1:y2]
plot for [i=2:6] 'test.dat' using i

unset xtics
unset xlabel
set border 2+4+8
set bmargin at screen bm + size * kk + gap
set tmargin at screen bm + size + gap
set yrange [y3:y4]

plot for [i=2:6] 'test.dat' using i

unset multiplot

Примечания:

  • Первый блок кода определяет размер вашего графика, а также два мин/макс для диапазона оси y.
  • Второй блок кода устанавливает ваш стиль гистограммы. Я предлагаю вам использовать заполненные столбцы (иначе вы можете получить неправильные цвета, где график отрезается диапазоном y).
  • Третий блок запускает среду multiplot и устанавливает нижний график (4-й блок).
  • Пятый блок кода определяет верхний график.
  • Чтобы настроить график, измените параметры в первом блоке (bm, lm, rm, gap, size, kk и yi)

И это результат:

enter image description here