目前我正在尝试做类似的事情:
h = figure( 1 );
subplot( 1, 2, 1);
plot( X, Y );
grid on;
xlabel( 'abc' );
ylabel( 'xyz' );
title( 'Nice' );
legend( 'Awesome' )
handles = findall( 0, 'type', 'figure' );
createPDF( 'outputFileName', numel( handles ) );
所以,上面会在屏幕上生成一个.fig输出。模块createPDF调用将打开的图形转换为.ps文件并将其更改为PDF。当我在我的电脑上本地运行时,我看到所有数字都弹出,然后转换为.PS并最终转换为PDF
但是,我正在努力在服务器上运行它作为没有屏幕的批处理,因此我假设也没有.fig输出。如何将这些图表直接发送到.PS文件。上面的代码在for循环中运行并生成45个不同的数字。
由于
答案 0 :(得分:3)
打印功能正是您所需要的!
print('-dpsc2','-append','YourPSFile'); %// The '-append' is used to create a single file in the loop instead of multiple files.
整个代码:
clear
clc
for k = 1:5
X = 1:10;
Y = rand(1,10);
h = figure('Visible','off');
plot( X, Y );
grid on;
xlabel( 'abc' );
ylabel( 'xyz' );
title( 'Nice' );
legend( 'Awesome' )
print('-dpsc2','-append','YourPSFile'); %//Simply replace 'YourPSFile'with the name you want. Easy to implement in a for-loop with sprintf for instance.
end
以下是pdf的屏幕截图: