gnuplot中的复杂布局:混合文本和图形

时间:2014-05-15 22:23:19

标签: gnuplot

我正在考虑是否可以根据我的需要使用Gnuplot。由于我没有多少经验,我需要向更多知识渊博的人询问。

我基本上需要可视化来自不同数据集的数据;但它不能合并在一个地块上。此外,我需要添加文字,以显示某些值,我无法将其显示为图例或在图表的顶部,以免造成混淆。

我想做的是制作类似于你在Xcode Instruments中看到的东西:带有堆叠图形的网格视图,其中每个图形不占据绘图的整个部分,而只是其中的一部分,并且然后我可以在特定部分的文字两侧放置文字。

这样的东西,给你一个视觉(当然不完全一样):

https://developer.apple.com/library/ios/documentation/ToolsLanguages/Conceptual/Xcode_Overview/art/Instruments_2x.png

我正在查看这些示例,并且能够在特定位置添加带点的图表;这有助于我使用

确定每个图上的具体值
set object circle

我找到了一种堆叠图形的方法,用

set multi plot layout

但我找不到一个简单的方法来调整情节,所以我可以在左右两侧留出空间,在其中加入一些文字。

任何建议都非常受欢迎......我甚至不知道Gnuplot是否是这项工作的最佳工具。我将把情节图像放在报告和我们的内联网上。

1 个答案:

答案 0 :(得分:2)

set multiplot然后更改边距可让您自由修改所有图形的位置并自定义它们之间的距离。如果您希望四个图表彼此叠加,类似于您在链接中显示的图表,则可以执行以下操作:

set multiplot

set lmargin at screen 0.2 # Sets left margin at 0.2 from left end
set rmargin at screen 0.9 # Sets right margin at 0.9 from left end

set tmargin at screen 0.9 # Sets top margin at 0.9 from bottom
set bmargin at screen 0.7 # Sets bottom margin at 0.2 from bottom

set format x '' # Remove numbers along x axis

plot sin(x)

set tmargin at screen 0.7 # Sets top margin at 0.7 from bottom
set bmargin at screen 0.5 # Sets bottom margin at 0.5 from bottom

plot cos(x)

set tmargin at screen 0.5 # Sets top margin at 0.5 from bottom
set bmargin at screen 0.3 # Sets bottom margin at 0.3 from bottom

plot exp(x)

set tmargin at screen 0.3 # Sets top margin at 0.3 from bottom
set bmargin at screen 0.1 # Sets bottom margin at 0.1 from bottom

set format x # Restore numbers along x axis

plot x**2

enter image description here

当然,你可以根据需要复杂化。