在 Windows 10 上保存到 BMP 文件

Saving to BMP file on Windows 10

我正在尝试将绘图保存到 Windows 10 上的 bmp 文件。我可以使用交互式终端来完成此操作:windows 或使用 GUI 的 qt。但我无法弄清楚如何使用命令来做到这一点。这样做只会产生一个空文件。

gnuplot> set terminal windows

Terminal type is now 'windows'
Options are '0 color solid butt enhanced standalone'
gnuplot> set output "file.bmp"  
gnuplot> plot sin(x)
Closing file.bmp

如果我启动 gnuplot 控制台并 set term windows 并键入 plot sin(x) gnuplot 崩溃。这肯定是我的系统(Win10,gnuplot 5.4.1)的错误或问题。如果我将终端选项设置为 docked layout 1,1,我只能在不崩溃的情况下进行绘图。但是后来,我得到了一个空的 BMP 文件,就像你得到的那样。

实际上,到目前为止我还没有发现任何从 4.4.0 开始的 gnuplot 版本似乎能够创建正确的 BMP 输出。

那么,我的建议是创建一个 PNG 输出并将其转换为 BMP,例如通过 ImageMagick。

  • 下载并解压 ImageMagick

    的 .zip 版本
  • 仅将文件 magick.exe 复制到您的 gnuplot 工作目录(或您的系统可以找到它的其他地方)

  • 将下面的脚本保存到文件中SO71415908.gp

  • 在 Windows 命令行中键入 gnuplot -c SO71415908.gp,或者在 gnuplot 控制台中键入 load "SO71415908.gp"。但是,在后一种情况下,我还没有找到如何在不关闭 gnuplot 的情况下关闭 Windows 控制台 windows。

脚本:

### create a BMP file with gnuplot via help of ImageMagick
reset session
set terminal pngcairo

FILE = "SO71415908"       # filename without extension

set output sprintf("%s.png",FILE)

plot sin(x)

set output      # close the file, necessary or not?

system sprintf('magick %s.png %s.bmp',FILE,FILE)
### end of code

结果:

两个文件:SO71415908.pngSO71415908.bmp