Matrix gnuplot矩阵增加了像素大小
我在gnuplot中可视化大型矩阵时遇到困难,似乎是由于像素大小。作为一个简单的工作示例,我尝试使用以下命令绘制一个5000 x 5000的单位矩阵:Matrix gnuplot矩阵增加了像素大小,matrix,gnuplot,pixel,Matrix,Gnuplot,Pixel,我在gnuplot中可视化大型矩阵时遇到困难,似乎是由于像素大小。作为一个简单的工作示例,我尝试使用以下命令绘制一个5000 x 5000的单位矩阵: set term pngcairo enh col set out "plot.png" unset key set datafile commentschars "%#" set xrange [0:5000] set yrange [5000:0] reverse plot 'A' matrix w image 数据是。生成的绘图如
set term pngcairo enh col
set out "plot.png"
unset key
set datafile commentschars "%#"
set xrange [0:5000]
set yrange [5000:0] reverse
plot 'A' matrix w image
数据是。生成的绘图如下所示:
你可以看到一些对角线元素,但它看起来很糟糕,很多对角线都丢失了。当我转到10000 x 10000时,对角线都不可见。看起来像素的大小不够大。相比之下,以下matlab代码生成了一个漂亮的图形:
A = eye(5000,5000);
imagesc(A);
该图如下所示:
在这里,我们可以看到一个很好的图像对角线如何使gnuplot生成类似的图形??选项1:使打印分辨率足够大,使其实际上每边可以表示5000像素。如果生成的图像文件对于您的目的来说太大,您可以使用外部工具(如ImageMagick)对其进行收缩。一个可能的问题是,对角线太细,当你缩小图形时,它将变得不可见
set size square
unset key
set datafile commentschars "%#"
set xrange [0:5000]
set yrange [5000:0] reverse
set term pngcairo size 6000,6000 fontscale 10.
set output 'bigplot.png'
plot 'A' matrix w image
unset output
选项2:对矩阵进行下采样,使其适合较小的绘图分辨率。例如
set size square
unset key
set datafile commentschars "%#"
set xrange [0:5000]
set yrange [5000:0] reverse
set term pngcairo size 600,600
set output 'smallplot.png'
plot 'A' matrix every 10:10 with image
下面显示的是选项2的输出