Using gnuplot, how to 'cut out' usused y-axis regions of the graph

时光怂恿深爱的人放手 提交于 2019-12-19 07:38:14

问题


I am trying to plot a graph, where on the Y axis I have CPU Utilization, and the current range is from 0-100%. My data only consists from 0-20% and 80-100%, and I just have a large white gap from 20-80%. Is there any way to 'cut out' this blank space, so the viewer can see in more detail what is going on in the 0-20% and 80-100% ranges?

Thank you.


回答1:


As Christoph said in the comments this needs to be done manually using set multiplot and removing borders, etc. An example:

set multiplot
# remove border and ytics from right hand side
set border 7
set ytics nomirror
# set top and bottom margins for both halves of the plot
set tmargin at screen 0.96
set bmargin at screen 0.1
# set left and right margins for left half of the plot
set lmargin at screen 0.1
set rmargin at screen 0.5
# set xrange for left half of the plot
set xrange [0:2*pi]
# set some lines to delimit transition from one half of the plot to next
set arrow from screen 0.50,0.08 to screen 0.52,0.12 nohead
set arrow from screen 0.49,0.08 to screen 0.51,0.12 nohead
set arrow from screen 0.50,0.94 to screen 0.52,0.98 nohead
set arrow from screen 0.49,0.94 to screen 0.51,0.98 nohead
# plot left half
plot sin(x) not
# remove border from left hand side and set ytics on the right
set border 13
unset ytics
set y2tics
set format y2 ""
# set left and right margins for right half of the plot
set lmargin at screen 0.51
set rmargin at screen 0.91
# set xrange for right half of the plot
set xrange [13.5:13.5+2*pi]
# plot
plot sin(x) axes x1y2



来源:https://stackoverflow.com/questions/28653741/using-gnuplot-how-to-cut-out-usused-y-axis-regions-of-the-graph

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!