3

我试图通过某种环境来模拟一定的进步。x 轴将表示环境中的位置(基于 x 坐标)。

为了清楚地说明这一点,我想要我的情节的 x 轴上的环境图像(基于.png)(环境相当宽且不那么高,所以它应该看起来不错),基本上是xtics/x 轴标签。

你对如何解决这个问题有什么建议吗?

提前致谢!

4

1 回答 1

3

您可以在一个plot命令中同时绘制图像和数据,也可以使用multiplot. 第一个变体更容易,但图像在绘图内部,另一个有点复杂,但允许“轴图像”的任意定位。

轴的虚拟图像“gradient.png”是

在此处输入图像描述

一个绘图命令:

set yrange[0:1]
set xrange[0:1]
plot 'gradient.png' binary filetype=png dx=0.0015 dy=0.002 with rgbimage t '',\
     x**2

结果是:

在此处输入图像描述

使用多图

set yrange[0:1]
set xrange[0:1]

set lmargin at screen 0.1
set rmargin at screen 0.98
set tmargin at screen 0.98
set bmargin at screen 0.2
set xtics offset 0,-1.5
set xlabel 'xlabel' offset 0,-1.5
set ylabel 'ylabel'

set multiplot
plot x**2

set tmargin at screen 0.2
set bmargin at screen 0.15
unset border
unset tics
unset xlabel
unset ylabel
unset key
set autoscale xy
plot 'gradient.png' binary filetype=png with rgbimage 
unset multiplot

如您所见,这需要更多的努力。解释细节:

  • 您必须设置明确的边距,以便轴图像可以正好放置在主图下方。

  • 在绘制轴图像之前,您必须删除ticslabels、重置范围autoscale等(因此您还必须设置固定lmarginrmargin)。

  • 要绘制图像本身,请使用绘图样式with rgbimage

  • 您必须微调xticsxlabel偏移,以及marings。

生成的图像是:

在此处输入图像描述

于 2013-08-23T12:13:32.283 回答