2015-10-17 82 views
0

我試圖用hist3使用簡單下面的代碼創建在MATLAB 2015A二維直方圖:圖像保存爲EPS

figure 
hist3([X,Y],[100 100]); 
set(get(gca,'child'),'Facecolor','interp','CDataMode','auto'); 
colormap('jet') 
set(gca,'TickLabelInterpreter','latex') 
axis 'square' 
xlabel('$x$','interpreter','latex','Fontsize',12) 
ylabel('$y$','interpreter','latex','Fontsize',12) 
view(-37,26) 

其中X,Y與length(X)=length(Y)=2026486兩個向量。 我嘗試使用

print('example','-depsc') 

在EPS保存圖像,但所得到的圖像是基於像素的。我試着改變渲染器:

print('example','-depsc','-painters') 

但是MATLAB在打印時不斷崩潰,所以我必須手動重新啓動計算機。 我也嘗試以pdf格式保存,但質量不變。 有沒有辦法解決這個問題?

回答

0

嘗試使用:

fig_fname = 'example'; 
print(gcf,'-depsc2',[fig_fname '.eps']); 
+0

首先,感謝您的回覆;我嘗試改變代碼,因爲你建議,但我仍然得到一個基於像素的圖像。 –

+0

嘗試根源導致它:註釋視圖(),看看會發生什麼。然後將hist3()更改爲scatter3(1:10,1:10,1:10)並檢查。 – yuval

+0

使用scatter3而不是hist3(有和沒有view())我得到矢量化的圖像,我想;註釋視圖()和使用hist3我得到一個基於像素的圖像..我也試着改變兩個向量X,Y的長度,但結果是一樣的.. 看來,問題在於使用hist3函數.. –