在八度音程中绘制黑色背景:在打印文件中保留背景颜色

plotting with black background in octave: keeping background color in print file

我正在使用octave (4.2.2) 制作黑色背景的图形。

clear;clf
%% circle
theta=linspace(0,2*pi,91);xc=cos(theta);yc=sin(theta);
fill(0.3*xc,0.3*yc,[0,0.5,0.5]);hold on
set(gca,'color',[0 0 0])

此脚本在终端上完成,但是如果我使用

打印图形
print -dpng black.back.png

图像为白色背景。如果将set color命令改为[1,1,1],终端显示的图形和打印出来的图像都是白色背景。谁能建议一种将黑色背景的图像保存到文件的方法?

这是早期(在 Windows 出现之前)的残余,当时显示背景默认为黑色,但纸张一如既往地为白色。数字有一个名为 InvertHardCopy 的 属性,默认情况下(仍然,经过这么多年)。这 属性 导致图形和坐标轴以白色背景打印。

根据您的预期行为将其关闭:

set(gcf,'InvertHardCopy','off')

See the MATLAB documentation. The Octave docs have a similar entry.