解决方案:正如用户Andy在评论中所建议的那样,更新最新版本的Octave(目前:octave-4.0.1-rc4)修复了问题,情节可能是保存为PNG。
我在Octave中绘制了大量的数据。但是当我尝试保存图像时,程序崩溃而没有任何解释或真正的错误消息。我的Octave是4.0版,它在Win 8.1上运行,graphics_toolkit
是 qt 。
到目前为止,保存较少量的数据已经奏效,但不知何故,我似乎达到了可绘制绘图但未保存的大小。
首先,我从向量inputs
中列出的几个文件中加载数据:
data = [];
for i = 1:length(inputs)
data = [data; load(inputs{i})];
endfor
结果是包含数字的955.524 x 7矩阵。单独加载需要一段时间在我的系统上(几分钟),但最终成功。然后我继续绘制数据:
hold on;
for j = 1:length(data(1,:))
curenntColumn = normalize(data(:,j)); % make sure all data is in the same range
plot(1:length(curenntColumn), curenntColumn, colours{j}); % plot column with distinct colour
endfor
hold off;
这导致绘制的图如图1所示,以正确的颜色正确显示七列中每一列的所有955.524个条目。如果程序在此处结束,则它会正常退出。但是,如果我添加
print("data.png");
Octave将在打开绘图窗口后继续运行,并最终崩溃,一个简单的"程序不再起作用"错误信息。如果我尝试从File-> Save菜单(提供另存为PDF)手动保存,也会发生同样的情况。即使只是触摸和移动绘图窗口也需要几秒钟。
我尝试使用 gnuplot 和 fltk 作为graphics_toolkit
,但后者甚至没有打开一个情节窗口,前者似乎被打破了(崩溃)尝试绘制甚至像plot(1:10,1:10);
)这样的简单数据。
现在,我可以截取情节并尝试使用它,但我真的宁愿让它自动保存。此外,我发现显示曲线是可能的,但不保存所述显示。因为它适用于少量数据,我可能只需要以某种方式为Octave分配更多资源吗?