非均匀网格上具有Gnuplot的热图

用户1962851

我想使用基于非均匀网格的gnuplot创建一个热图,这意味着我的x轴容器的宽度不完全相同,我不知道该怎么做,因为当我使用for绘制数据时例如“带有图像”,我得到大小一致的盒子,这些盒子根本不对应于我的坐标(因为“图像”将数据视为矩阵,就像我猜的那样)。因此,我想找到一种方法来获取不均匀的盒子,这些盒子也位于笛卡尔平面上的正确位置。

我的数据如下所示:

1 1 0.2
1 2 0.8
1 3 0.1
1 4 0.2

2 1 0.7
2 2 0.2
2 3 0.3
2 4 0.1

5 1 0.2
5 2 0.4
5 3 0.1
5 4 0.9

7 1 0.3
7 2 0.2
7 3 0.9
7 4 0.6

如果我在Gnuplot上运行此命令

set xrange [1:10]
p 'mydata.dat' with image

我得到的图像具有16个具有相同宽度和高度的框(显然,我在Stackoverflow上没有足够的“声誉”来发布图像,否则,我会这样做),但是理想情况下,我希望这些框具有不同的宽度并成为在飞机上的正确位置。例如,第一个方框的范围应该是1到2,第二个方框的范围是2到5,第三个方框的范围是5到7,最后一个方框的范围是7到10(这就是我写的原因set xrange [1:10])。

有人可以帮我吗?非常感谢你!

克里斯多夫

最简单(也许唯一可行)的方法是添加一些虚拟数据点并使用splot ... with pm3d这种绘图样式可处理带有一般四边形的热图。

image绘图风格绘制每个数据点的一箱(一个大像素),同时pm3d需要每个数据点为一个或多个四边形的角落。每个四边形的颜色由边角的值确定,并可以通过调整set pm3d corners2color

所以,你的情况,你需要扩大4x4矩阵的5x5矩阵(扩大到右,上),而是选择左下角确定颜色set pm3d corners2color c1

更改后的数据文件为:

1 1 0.2
1 2 0.8
1 3 0.1
1 4 0.2
1 5 0.5

2 1 0.7
2 2 0.2
2 3 0.3
2 4 0.1
2 5 0.5

5 1 0.2
5 2 0.4
5 3 0.1
5 4 0.9
5 5 0.5

7 1 0.3
7 2 0.2
7 3 0.9
7 4 0.6
7 5 0.5

10 1 0.5
10 2 0.5
10 3 0.5
10 4 0.5
10 5 0.5

要绘制它使用

set pm3d map corners2color c1
set autoscale fix
set ytics 1
splot 'mydata.dat' using 1:($2-0.5):3 notitle

4.6.3的结果是:

在此处输入图片说明

通常,z虚拟数据点-value无关紧要,但是在上面的脚本中,它应该位于最小值和最大值之间的某个位置,以允许set autoscale fix在色标上正常工作。

如果您不想手动更改数据文件,则可以使用一些脚本来完成,但这是一个不同的问题。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

具有新数据集的动画热图

来自分类Dev

非均匀网格上带有Gnuplot的热图

来自分类Dev

具有更改y值的Matplotlib热图

来自分类Dev

gnuplot:使用字符组合的热图

来自分类Dev

在python中解析具有非均匀行的数据

来自分类Dev

Gnuplot热图XYZ

来自分类Dev

非均匀网格上的数值积分

来自分类Dev

gnuplot添加具有不同设置的图

来自分类Dev

绘制2D数据:具有不同颜色图的热图

来自分类Dev

绘制多个热图gnuplot

来自分类Dev

停止gnuplot内插热图

来自分类Dev

具有因子水平的双色热图

来自分类Dev

仅具有x(或y)轴的热图

来自分类Dev

如何分割热图或绘制具有特定范围的边界?

来自分类Dev

具有DataFrame的热图

来自分类Dev

R ggplot热图,其中多行在同一图形上具有单独的图例

来自分类Dev

绘制具有不同像元宽度的热图

来自分类Dev

具有变化的细胞大小的Seaborn热图

来自分类Dev

数据“块”上的热图

来自分类Dev

Seaborn Heatmap在热图可视化的所有轴上均具有列名,而不是仅在默认的x和y轴上

来自分类Dev

绘制2D数据:具有不同颜色图的热图

来自分类Dev

具有不连续梯度的Gnuplot热图

来自分类Dev

CSS全宽网格-具有均匀边距的列

来自分类Dev

生成具有非均匀分布的随机整数

来自分类Dev

单位球体上的热图

来自分类Dev

在 Gnuplot 中绘制具有不同 bin 大小的热图

来自分类Dev

如何增加具有特定标签的热图的区别

来自分类Dev

如何生成具有不同温度的磁盘的热图?

来自分类Dev

具有非均匀间距的 Numpy 渐变