我有一个包含数字矩阵的数据文件,该文件的格式类似于此:
nan nan nan nan
0.5 nan nan nan
0.1 1.3 nan nan
3.5 0.1 0.8 nan
我想绘制此矩阵,但是从图中跳过某些点,我们假设值为1.3
,因此在图中看起来好像值是nan
。
我看过一些帖子,这些帖子显示了如何跳过行或列,例如this one,或者如何使用热图(this one)来完成我想做的事情,但这需要使用不同的数据形式文件,如果我理解正确的话。
使用矩阵图也可以做到这一点,即
plot "datafile.dat" matrix w image
还是我必须重新格式化我的数据文件?
有一点背景知识;数据文件包含与外部场相互作用后原子的状态种群,我想从图中排除相互作用之前最初填充的状态。
答案 0 :(得分:0)
也可以在using
模式下用matrix
修改数据。第1列和第2列将包含索引,第3列将包含矩阵元素的值。参见help matrix examples
。因此,您可以这样做:
plot "/tmp/f" matrix u 1:2:((abs($3-1.3)<1e-5)?1/0:$3) w image
我不确定为什么,但是第3列包含原始数据的浮点表示形式,但该浮点表示形式与原始输入并不完全相同:因此abs
。