任何人有一种方法来绘制在gnuplot的一个bean情节?(Anyone have a way to

2019-10-18 18:08发布

标题是非常自我解释,但这里是想我做的图片。 我有一个艰难的时间,如果它甚至有可能搞清楚。

剧情从借来的: 地球化学背景值的评估周围的硫化物矿-与beanplots一种新的统计方法。 Gusstavason等。 2012。

Answer 1:

在正是这个方向做的情节可能是非常麻烦的,如果可能的话。

我的建议是阴谋与通常的取向一切(即具有“沉积物”轴为x轴,或者更确切地说,如x2轴),旋转所有标签了一下,最后由旋转的完整输出90度(如与pdf文件pdftk等)。

有了这个,你可以使用任何打印样式如常。 在下面的脚本我只是告诉你如何绘制的紫色和黄色充满曲线(使用伪数据)两个不同的数据集。 再加上其他的峰值应该是直线前进(曲线与例如条boxesvector绘图风格)。

为了具有不同ytics对于不同的小区,我相关联的特定y -值具有一定的情节, 1=Water ,..., 4=Gyttja )。

把所有toghether给出了下面的脚本:

reset
set terminal pdfcairo linewidth 2
outfile='bean'
set output outfile.'.pdf'
set encoding utf8

set x2range [0.5:9000]
set logscale x2
set x2tics (1, 5, 10, 50, '' 100, 500, '' 1000, 5000) out
set x2label 'mg/kg (sediments), µg/L (water)'
unset xtics

set yrange[0.5:4.5]
set ytics ('Water' 1, 'Minerogenic' 2, 'Peat' 3, 'Gyttja' 4) center rotate by -90 out

set label at graph 0.95, graph 0.05 right rotate by -90 'Nickel' font ',20' front
# cover possible data overlapping with the label
set object rectangle from graph 0.9, graph 0 to graph 1,graph 0.2 fillcolor rgb 'white' fillstyle solid noborder front

unset key

set macros
fs1="fillcolor rgb '#fc9e00' linewidth 2 fillstyle solid border lt -1"
fs2="fillcolor rgb '#9119f7' linewidth 2 fillstyle solid border lt -1"
# use pseudo data
set samples 500
plot '+' using 1:(4-0.3*exp(-(($1-10)/5.0)**4)) axes x2y1 with filledcurves y1=4 @fs1,\
     '' using 1:(4+0.2*exp(-(($1-70)/50.0)**4)) axes x2y1 with filledcurves y1=4 @fs2,\
     '' using 1:(1-0.4*exp(-(($1-5)/2.0)**2)) axes x2y1 with filledcurves y1=1 @fs1,\
     '' using 1:(1+0.1*exp(-(($1-30)/20.0)**2)) axes x2y1 with filledcurves y1=1 @fs2

set output
system(sprintf('pdftk %s.pdf cat 1W output %s-rot.pdf', outfile, outfile))
system(sprintf('pdftocairo -r 150 -png %s-rot.pdf', outfile))

这给出了(常规的和旋转的输出侧由端)与4.6.3:

有些东西是必需的伪数据。 对于一个真正的数据文件,绘制线条看起来有点不同。 不同的地块有一个分离1y -方向,所以你必须相应地扩展您的数据(这里手工完成与缩放系数sc ):

sc = 5.1
plot 'datafile.txt' using 1:(4 + $2/sc) axes x2y1 with filledcurves y1=4 @fs1

你当然也可以自动进行缩放,通过提取一些最小值/最大值stats命令。



文章来源: Anyone have a way to plot a bean plot in gnuplot?