gnuplot,将y轴分成两部分

gnuplot,将y轴分成两部分,gnuplot,histogram,Gnuplot,Histogram,我有一个直方图,有一些小值和一些非常大的值。如何将y轴分成两部分 编辑: 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

我有一个直方图,有一些小值和一些非常大的值。如何将y轴分成两部分

编辑:

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

我的答案是基于这个例子和评论。本质上,您正在寻找断裂的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
    环境,并设置较低的绘图(第四个块)
  • 第五段代码定义了上绘图
  • 要自定义绘图,请更改第一个块中的参数(
    bm
    lm
    rm
    gap
    size
    kk
    yi
这就是结果:


我相信您可以手动指定
yticks
ytics仅指定在轴旁边绘制的标签。它没有引入省略号,乍一看它看起来很棒。谢谢但是,现在无法测试它。我稍后会报告它是否有效。这不是真正直观的,而是巧妙的!很好!谢谢@Schorsch!