我阅读了Plotchart文档的其他输出格式部分,但仍然不知道该怎么做。
我想要:
- 将画布另存为图像而不显示它。所以我可以在批处理模式下运行它。
- 以其他格式保存。(例如:jpeg、png...)
一个简短的例子表示赞赏。
我没有尝试此解决方案,但您链接的手册页描述了saveplot
将绘图存储到 Postscript(或其他图像格式)文件中的命令。
创建绘图小部件后,您可以执行以下操作
.plot saveplot filename.ps -plotregion bbox
其中-plotregion bbox
说要保存所有绘图,而不仅仅是可见部分(-plotregion window
,这是默认设置)。
我发现Img库能够将 Postscript 转换为各种格式,并且不显示画布的一种快速而肮脏的方式是exit
立即运行。
这是一个例子:
package require Plotchart
package require Img
canvas .c -background white -width 400 -height 200
pack .c -fill both
set s [::Plotchart::createXYPlot .c {0.0 100.0 10.0} {0.0 100.0 20.0}]
foreach {x y} {0.0 32.0 10.0 50.0 25.0 60.0 78.0 11.0 } {
$s plot series1 $x $y
}
$s title "Data series"
set file "test.ps"
$s saveplot $file
set root [file rootname $file]
set image [image create photo -file $file]
foreach {f suffix} {JPEG jpg GIF gif PNG png} {
$image write $root.$suffix -format $f
}
exit