gnuplot:绘制没有白色边框的图像
gnuplot: plot image without white border
我想使用 gnuplot 绘制图像数据,没有任何边框、抽动等。只有图像。不幸的是,gnuplot 总是把底线画成白色。下面是一个应该生成全黑 3x3 像素图像的示例:
set term png size 3,3
set out 'test.png'
set xrange [0:2]
set yrange [0:2]
unset xlabel
unset ylabel
set lmargin 0
set rmargin 0
set tmargin 0
set bmargin 0
set size ratio -1
unset xtics
unset ytics
set border 0
unset key
p '-' w rgbimage
0 0 0 0 0
1 0 0 0 0
2 0 0 0 0
0 1 0 0 0
1 1 0 0 0
2 1 0 0 0
0 2 0 0 0
1 2 0 0 0
2 2 0 0 0
e
结果是一张有 1 条白线和 2 条黑色像素线的图片:
这是图像查看器的灰色框的放大屏幕截图:
有什么解决办法吗?
我正在使用 gnuplot 5.0
感谢您的帮助。
我认为 3px 乘以 3px 的图像不是一个合适的用例。当然,表示一个 3x3 数据矩阵是完全有效的!
好像在用某些终端绘制基于像素的数据时出现了一些问题。既然你说过,最后你想要一个矢量图像(无论如何它只会影响你在像素数据顶部绘制的一些箭头),我只看了一些矢量格式,使用你的例子testdata.dat
和脚本 testdata.gp
set autoscale xfix
set autoscale yfix
set margins 0,0,0,0
unset xtics
unset ytics
unset border
unset key
p 'testdata.dat' w rgbimage
pdfcairo
不起作用,有一些边界伪影。
postscript
没问题,我用了
set terminal postscript eps level3 size 8cm,1.6cm
set output 'testdata.eps'
load 'testdata.gp'
set output
system('epstopdf testdata.eps')
tikz
也可以正常工作:
set terminal tikz standalone externalimages size 8cm,1.6cm
set output 'testdata.tex'
load 'testdata.gp'
set output
system('pdflatex testdata.tex')
svg
工作正常:
set terminal svg standalone size 800,160
set output 'testdata.svg'
load 'testdata.gp'
我还不知道,开罗终端的实际问题是什么。
我想使用 gnuplot 绘制图像数据,没有任何边框、抽动等。只有图像。不幸的是,gnuplot 总是把底线画成白色。下面是一个应该生成全黑 3x3 像素图像的示例:
set term png size 3,3
set out 'test.png'
set xrange [0:2]
set yrange [0:2]
unset xlabel
unset ylabel
set lmargin 0
set rmargin 0
set tmargin 0
set bmargin 0
set size ratio -1
unset xtics
unset ytics
set border 0
unset key
p '-' w rgbimage
0 0 0 0 0
1 0 0 0 0
2 0 0 0 0
0 1 0 0 0
1 1 0 0 0
2 1 0 0 0
0 2 0 0 0
1 2 0 0 0
2 2 0 0 0
e
结果是一张有 1 条白线和 2 条黑色像素线的图片:
这是图像查看器的灰色框的放大屏幕截图:
有什么解决办法吗?
我正在使用 gnuplot 5.0
感谢您的帮助。
我认为 3px 乘以 3px 的图像不是一个合适的用例。当然,表示一个 3x3 数据矩阵是完全有效的!
好像在用某些终端绘制基于像素的数据时出现了一些问题。既然你说过,最后你想要一个矢量图像(无论如何它只会影响你在像素数据顶部绘制的一些箭头),我只看了一些矢量格式,使用你的例子testdata.dat
和脚本 testdata.gp
set autoscale xfix
set autoscale yfix
set margins 0,0,0,0
unset xtics
unset ytics
unset border
unset key
p 'testdata.dat' w rgbimage
pdfcairo
不起作用,有一些边界伪影。postscript
没问题,我用了set terminal postscript eps level3 size 8cm,1.6cm set output 'testdata.eps' load 'testdata.gp' set output system('epstopdf testdata.eps')
tikz
也可以正常工作:set terminal tikz standalone externalimages size 8cm,1.6cm set output 'testdata.tex' load 'testdata.gp' set output system('pdflatex testdata.tex')
svg
工作正常:set terminal svg standalone size 800,160 set output 'testdata.svg' load 'testdata.gp'
我还不知道,开罗终端的实际问题是什么。