arrays - 是否可以使用 gnuplot 以这种格式绘制一系列矩阵

标签 arrays matrix gnuplot heatmap animated-gif

我的代码目前创建了这样的输出(使用示例数字)

0.0 0.0 0.0 
0.0 1.0 0.0 
0.0 0.0 0.0 
0.0 0.0 2.0 

0.0 0.0 0.0 
0.0 0.0 2.0 
0.0 0.0 0.0 
1.0 0.0 0.0 


0.0 0.0 0.0 
0.0 3.0 0.0 
0.0 0.0 0.0 
0.0 0.0 1.0 


3.0 0.0 0.0 
0.0 0.0 0.0 
1.0 0.0 2.0 
0.0 0.0 0.0 


3.0 0.0 0.0 
0.0 0.0 0.0 
1.0 0.0 2.0 
0.0 0.0 0.0 


3.0 0.0 0.0 
0.0 0.0 0.0 
1.0 0.0 2.0 
0.0 0.0 0.0 


3.0 0.0 0.0 
0.0 0.0 0.0 
1.0 0.0 2.0 
0.0 0.0 0.0

希望找到一个解决方案,说明如何将此数据绘制为 3D 点或循环遍历每个矩阵的 gif(实际代码包含数百个矩阵)。如有必要,我可以更改输出格式。到目前为止我已经尝试过了

do for [i=1:7] {
plot "data.txt" matrix with image
}

除了尝试我在网站上找到的其他解决方案,但似乎没有人尝试做与我相同的事情。

如果有 gnuplot 经验的人可以帮助我,那将是一个巨大的帮助(如果这有所不同,我正在使用 mac)

最佳答案

欢迎来到 StackOverflow!我假设你的矩阵的所有分离都是两个空行。 如果是这种情况,您可以通过 index(查看 help index)寻址矩阵。 您可以通过 stats(查看 help stats)了解您有多少 block 。遍历这些 block 并将输出设置为 term gif animate(查看 help gif)。不要绘制数据 block $Data,只需绘制您的文件即可。

斯克鲁普:

### plot matrices as asnimation
reset session

$Data <<EOD
0.0 0.0 0.0 
0.0 1.0 0.0 
0.0 0.0 0.0 
0.0 0.0 2.0 


0.0 0.0 0.0 
0.0 0.0 2.0 
0.0 0.0 0.0 
1.0 0.0 0.0 


0.0 0.0 0.0 
0.0 3.0 0.0 
0.0 0.0 0.0 
0.0 0.0 1.0 


3.0 0.0 0.0 
0.0 0.0 0.0 
1.0 0.0 2.0 
0.0 0.0 0.0 


3.0 0.0 0.0 
0.0 0.0 0.0 
1.0 0.0 2.0 
0.0 0.0 0.0 


3.0 0.0 0.0 
0.0 0.0 0.0 
1.0 0.0 2.0 
0.0 0.0 0.0 
EOD


stats $Data u 0 nooutput    # get the number of blocks
N = STATS_blocks

set term gif size 600,400 animate delay 30
set output "SO72250259.gif"

set size ratio -1
set cbrange [0:3]
set xrange [-0.5:2.5]
set yrange [-0.5:3.5]

do for [i=0:N-1] {
    plot $Data index i matrix w image
}
set output
### end of script

结果:

enter image description here

关于arrays - 是否可以使用 gnuplot 以这种格式绘制一系列矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72250259/

相关文章:

python - python 列表中每个唯一元素的所有索引

arrays - Perl - 如何将 2 个数组/列表(如 [ a=>1, b=>2, ... ])连接到一个?

python - 当切片对象是 ndarray 元组时的高级整数切片

plot - 如何在大型数组数据文件 gnuplot 中找到最大条目?

Gnuplot cblabel 没有出现

java - 将棋子放置在 2D 阵列游戏板上

arrays - 将 unicode 代码点数组转换为字符串

c - 使C代码自动绘制图形

javascript - 欧拉项目#345 : Max sum matrix with unique path

c++ - 使用 Rcpp 在 R 中使用矩阵是否有限制?