gnuplot热图轴标记
我想用gnuplot绘制一张热图 我的数据是(file.txt): 当我键入以下命令时gnuplot热图轴标记,gnuplot,heatmap,Gnuplot,Heatmap,我想用gnuplot绘制一张热图 我的数据是(file.txt): 当我键入以下命令时 plot "file.txt" using 1:2:3 w image 它会生成热图。但是,网格与数据并不完全对应。有一个5乘5的网格,但网格单元的轴标签与文件前两列中的值不对应。此外,所有网格单元的大小都相同。但是,它们的大小应该不同 让我试着解释一下我期望得到什么。 以下绘图是使用以下命令生成的: set xrange [-10:110] set yrange [-10:60] plot "file.
plot "file.txt" using 1:2:3 w image
它会生成热图。但是,网格与数据并不完全对应。有一个5乘5的网格,但网格单元的轴标签与文件前两列中的值不对应。此外,所有网格单元的大小都相同。但是,它们的大小应该不同
让我试着解释一下我期望得到什么。
以下绘图是使用以下命令生成的:
set xrange [-10:110]
set yrange [-10:60]
plot "file.txt"
此绘图中的每个“+”对应于文件前两列(x和y)的一行。对于每个“+”,第三列中都有一个值(z)。该z值是参数值x和y的实验结果。我希望看到z值是围绕“+”符号的彩色网格单元。也就是说,网格单元的中心应该是这些“+”符号。当然,网格单元将是不同大小的矩形。我希望我说得更清楚一点
任何帮助都将不胜感激。
艾哈迈特怎么样
set pm3d map # depening on what you want
splot "file.txt" w pm3d
要使其正常工作,您需要更改数据文件并添加一些类似这样的换行符
5 0 0.0531072048
5 5 0.3476492247
5 10 0.322184913
5 20 0.2824368116
5 50 0.2919607884
10 0 0.0472727812
10 5 0.3578374264
10 10 0.3483726737
10 20 0.3212322874
10 50 0.3017652051
20 0 0.0536101408
20 5 0.3460970331
20 10 0.3589370763
20 20 0.412912733
20 50 0.3907459465
50 0 0.0497156879
50 5 0.3611165857
50 10 0.4046003446
50 20 0.4620183753
50 50 0.4156261444
100 0 0.0483082089
100 5 0.3815755779
100 10 0.4031628253
100 20 0.4537462156
100 50 0.4231632329
或者,您可以根据z值将绘图更改为inlcude颜色。像这样的
set xrange [-10:110]
set yrange [-10:60]
plot "file.txt" u 1:2:3 w p pt 7 ps 4 palette
在这里,您也可以玩pt。如果您用
splot
替换plot
,是否有帮助?在打印命令之前使用set view map
。@giordano,这稍微改变了网格大小,但这仍然不是我想要的,谢谢。你能给出一个预期结果的示例吗?嗨@giordano,我已经试着解释了我在原始帖子末尾希望看到的内容。谢谢@Arun,你的第一个解决方案几乎就是我想要的(希望z点不在网格单元的中心)但我能很有希望地找到它。您可能还想玩一下set pm3d corners2color
,为网格单元获得正确的颜色。
set xrange [-10:110]
set yrange [-10:60]
plot "file.txt" u 1:2:3 w p pt 7 ps 4 palette