matlab画图plot以及自动保存图像
plot?
(1)plot(x),x為向量時,以該元素的下標為橫坐標、元素值為縱坐標繪出曲線。
(2)plot(x,y),x、y為同維數組時,繪制以x、y元素為橫縱坐標的曲線。
(3)plot(x1,y1,x2,y2,...),繪制以x1為橫坐標、y1為縱坐標的曲線1,以x2為橫坐標、y2為縱坐標的曲線2,等等。其中x為橫坐標,y為縱坐標,繪制y=f(x)函數曲線。
常用語句見示例:
figure('color','w') ? ? ? ? ? ? % 設置圖片背景色為白色 figure('Name','測試數據圖') % 第一張圖就會顯示figure1 測試數據圖。常見代碼直接用figureplot(aa(t1,1),'-ro') % 繪圖時plot命令中末尾'-.r*'、'--mo'、':bs' 可改變線條和點的樣式,如:m代表顏色后面的o代表點的樣式 set(gca,'XTick',[0:10:320]);? ? %設定x坐標范圍和間距 set(gca,'YTick',[95:1:101]); %設定y坐標范圍和間距% set(gca,'XLim',[0 315]); % 設定x坐標的范圍。注意set語句要放在plot后面才起作用 % axis([xmin xmax ymin ymax]); % axis設置坐標軸在指定的區間,注意這個必須同時設定xy % xlim([xmin xmax]) % 只設置x坐標范圍 % ylim([ymin ymax]) % 只設置y坐標范圍% legend('A') % 添加圖例 ylabel('均值'); xlabel('樣本數'); ? ? % 添加x,y標簽 % ylabel('values of sin(t) and e^{-x}') % 添加y軸信息 e^{-x}是顯示指數的方法 title(['第',num2str(t),'列信號']); ? ?% 添加圖片title%% 多行title % firstline = '測試集的實際分類和預測分類圖'; % secondline= ['Accuracy=',num2str(accuracy)]; % title({firstline;secondline},'Fontsize',12); % title('{\s}^{-1}');?只想顯示圖像的一部分:
plot(data(:,1)) ; xlim ([5100 10000]); % 設置要顯示的x軸范圍1) 關于plot線條和顏色,可參見:
(1條消息) matlab畫圖(plot)命令。長期更新!_xiaotao_1的博客-CSDN博客_matlab畫圖plot
b blue 藍 . point - solidg green 綠 o circle : dottedr red 紅 x x-mark -. dashdot c cyan 青 + plus -- dashed m magenta 品紅 * star (none) no liney yellow 黃 s squarek black 黑 d diamondw white 白 v triangle (down)^ triangle (up)< triangle (left)> triangle (right)p pentagram 五角星h hexagram 六角星其他Matlab中較美觀的顏色(RGB三元組):
%% 適用于Matlab的RGB顏色 [0.00,0.45,0.74] //藍 [0.85,0.33,0.10] //橙紅 [0.93,0.69,0.13] //橙黃 [0.72,0.27,1] //淡紫 [0.47,0.67,0.19] //淡綠?舉例:
%% 對點 scatter(x,y,'Marker','o','LineWidth',1,...'MarkerEdgeColor','black','MarkerFaceColor',[0.93,0.69,0.13]); // 'Marker' 點的形狀 // 'LineWidth' 點的邊線粗細 // 'MarkerEdgeColor' 點的邊線顏色 // 'MarkerFaceColor' 點的填充色 %% 對線 plot(x,y,'LineWidth',1.5,'Color',[0.85,0.33,0.10]); // 'LineWidth' 線粗細 // 'Color' 線的顏色2) legend:
legend(string1,string2,string3, …)? ? ?%分別將字符串1、字符串2、字符串3……標注到圖中,每個字符串對應的圖標為畫圖時的圖標。
legend('A','B') % 如果添加多個標簽,就依次往后排 legend('A','B','NorthEastOutside'); %強行將注釋視窗放在圖形視窗的外右邊。3)?set?設置圖形對象屬性
set(H,NameArray,ValueArray)?使用元胞數組?NameArray?和?ValueArray?指定多個屬性值。要為?m?個圖形對象中的每個圖形對象設置?n?個屬性值,請將?ValueArray?指定為?m×n?的元胞數組,其中?m = length(H),而?n?等于?NameArray?中包含的屬性名的數量。
功能包括:
設置當前圖像字體大小和格式、圖像線寬和尺寸比例、圖片的大小
設置當前圖像網格線線條類型、寬度,網格線可以設定為虛線會比較好看
set(gcf, 'DefaultAxesLineWidth',1); set(gcf,'unit','centimeters','position',[3 5 7 5]); set(gca, 'FontSize', 16); %set調用將圖像字體設置為16 set(gca,'FontName','Monospaced','FontSize',16,'LineWidth',1.5); %設置字體格式和線寬 set(gca,'FontName','SimSun','FontSize',16,'LineWidth',1.5); % 宋體set(gca,’xtick’,[]) %去掉x軸的刻度 set(gca,’ytick’,[]) %去掉y軸的刻度 set(gca,’xtick’,[],’ytick’,[]) %同時去掉x軸和y軸的刻度調節圖片大小:
set (gca,'position',[0.1,0.1,0.8,0.8] ) % 其中,輸入數值,分別是左邊距,下邊距,橫向寬度,縱向高度。繪制網格線:
set(gca,’XGrid’,’on’); %繪制X軸垂直網格線 set(gca,‘gridlinestyle’,’:’,'GridColor','k',‘linewidth’,3)%設置網格線線條類型、顏色和寬度 set(gca,‘box’,‘on’)將圖軸方框繪制出來set(get(gca,'XLabel'),'FontSize',figure_FontSize,'Vertical','top');
set(get(gca,'YLabel'),'FontSize',figure_FontSize,'Vertical','baseline');
set(findobj('FontSize',12),'FontSize',figure_FontSize);
gca返回的是當前圖片的坐標句柄。
第一句get(gca,'XLable')獲取當前坐標的X標簽,然后使用set去設置這個標簽的字體大小等參數。
同理第二句是獲取Y標簽,然后設置字體和位置信息。
第三句:findObj可以獲取字體大小是12的對象的句柄,然后將所有的字體更改為自己設置的(figure_FontSize)大小。
?4)畫直線
plot([x1,x2],[y1,y2])
其中(x1,y1)是起點,(x2,y2)是終點。
5) 其他
hold on 圖像重疊顯示
grid on? 放在繪圖函數末尾,顯示網格
grid off 關閉網格
例:
>> [X,Y,Z] = peaks;surf(X,Y,Z)grid offgrid on??
6) 舉例:
(摘自主頁y = mapminmax(‘apply‘,x,ps)與mapminmax(‘reverse‘,y,ps)中引用的bp神經網絡的例子的部分代碼)
figure plot(1:N,T_test,'b:*',1:N,T_sim,'r-o') % T_test和T_sim 用不同線條顯示在同一圖中 legend('真實值','預測值') xlabel('預測樣本') ylabel('辛烷值') string = {'測試集辛烷值含量預測結果對比';['R^2=' num2str(R2)]}; title(string)結果:
?
可以參考:?
MATLAB二維繪圖(二)向圖中添加標題,坐標軸,圖標和文字信息_黃其才_的博客-CSDN博客
plot和stem區別:
plot是連續函數,而stem畫出來是離散函數,桿圖。
line 畫輔助線?
line()函數可以在畫布中畫一些輔助線。
line([起點橫坐標,終點橫坐標],[起點縱坐標,終點縱坐標])
line([1,2],[3,4])將畫出(1,3)到(2,4)的一條直線,而不是(1,2)到(3,4)。
舉例:
subplot(131) line([1,2],[3,4]); subplot(132) line([1,1],[3,5],'color','k','linestyle','--'); subplot(133) line([3,5],[2,2],'linestyle','-','color','r');圖像保存?
1) saveas 清晰度低
saveas(gcf, 'save.jpg'); %保存當前窗口的圖像,格式為jpg,命名為save.jpg2) print?
print(figure_handle,fileformat,filename)figure_handle:圖形句柄,如果圖形窗口標題欄是“Figure 3”,則句柄就是3;也可以直接用gcf獲取當前窗口句柄
fileformat:單引號字符串,指定存儲格式:
png格式: '-dpng';? jpeg格式:? '-djpeg';? tiff格式:? '-dtiff'; bmp格式:? '-dbitmap'; gif格式:'-dgif'; emf無損格式:'-dmeta'
filename:文件名
img =gcf; %獲取當前畫圖的句柄 print(img, '-dpng', '-r600', './img.png') %即可得到對應格式和期望dpi的圖像%第一個參數為fig的句柄,第二個-r后加對應的分辨率dpi,第二個為-d加對應的圖像格式 %最后加上文件路徑及名稱字符串。3)? imwrite
img = getimage(gcf); %獲取當前坐標系圖像 imwrite(img,'img.tiff', 'tiff', 'Resolution', 600) %只有tiff可以使用Resolution參數, png可以使用X/YResolution, 參考help imwrite參考鏈接:
set(get(gca,'XLabel'),'FontSize',figure_FontSize,'Vertical','top'); – MATLAB中文論壇 (ilovematlab.cn)
(1條消息) Matlab導出高DPI圖像——生成高分辨率.eps .tiff .jpg圖像的方法_Vertira的博客-CSDN博客_matlab輸出圖片分辨率
(1條消息) [Matlab]繪圖顏色_iTsing203的博客-CSDN博客_matlab畫圖顏色
(1條消息) matlab中的畫線函數line()_逸凌Time的博客-CSDN博客_matlab畫直線
總結
以上是生活随笔為你收集整理的matlab画图plot以及自动保存图像的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 45_局域网ip正则表达式
- 下一篇: 创建一个简单的MFC程序