在gnuplot中使用两个不同的y轴刻度组图表条形图?

时间:2016-06-21 20:16:52

标签: graph gnuplot bar-chart

美好的一天,

我需要创建一个不同比例的组条形图。

考虑以下数据示例:

Metric A B
Group1 10 1500
Group2 20 4000

我正在使用此answer和此代码:

reset
set style histogram cluster gap 1
set style data histograms
set style fill solid 1.00 border
set yrange [0:]
set ytics nomirror
set y2range [0:]
set y2tics

set key right autotitle columnheader plot 'file.dat' u 2 every ::::0, '' u 3:xtic(1) every ::::0,\ newhistogram lt 1 at 1,\ 'file.dat' u 2 every ::1::1 axes x1y1, '' u 3:xtic(1) every ::1::1 axes x1y2

上面的代码创建了这个图:

enter image description here

然而,我需要的是:

  1. 左Y刻度为[0:20]
  2. A中的所有数字均根据左Y刻度绘制
  3. B中的所有数字均按照右Y尺度绘制
  4. 如果可能,在左右Y刻度上放置标签。
  5. 如果可能,在图例中只有一对A和B.
  6. 这样,Violet颜色条将更高,并且仅依赖于A列数范围。

    非常感谢!

1 个答案:

答案 0 :(得分:2)

尝试使用y2

使用2轴
set ytics nomirror
set y2tics
set yrange [0:20]
set y2range [0:] 
set key right

label = "MyLabel"
set ylabel label
set y2label label

set style data histograms
plot 'histplot.dat' using 2 ti col axis x1y1, '' u 3:xticlabels(1) ti col axis x1y2