1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152
| close all
% 窗口初始最大化,推荐此命令 figure set(gcf,'outerposition',get(0,'screensize')); % 或者 set(gcf,'Position',get(0,'ScreenSize')) % 或者 a=get(0); figure('position',a.MonitorPositions);
% whitebg(1,'w') % 设置背景灰度
% 画图建议使用handle,方便命令调整
handle1=plot(a,'--pr','linewidth',1.5,'MarkerEdgeColor','r','MarkerFaceColor','m','MarkerSize',10) % MarkerEdgeColor 标记点边框线条颜色颜色字符,如’g’, ’b’等 % MarkerFaceColor 标记点内部区域填充颜色颜色字符 % MarkerSize 标记点大小 数值,单位为points
% 或者使用RGB颜色,更多查看matlab绘图命令汇总 handle1=plot(x,y,'Color',[152 245 255]/256,'Linewidth',2); handle1=plot(x,y,'Color','r','Linewidth',2);
hold on
% 有时候需要更改坐标轴刻度显示 set(gca, ’XTick’, [0 1 2]) % X坐标轴刻度数据点位置 set(gca,'XTickLabel',{'a','b','c'}) % X坐标轴刻度处显示的字符
% 待补充 set(gcf,'paperpositionmode','auto');
% 不采用 % 画图外观设置,type案例1, set(gcf,'Position',[100 100 260 220]); set(gca,'Position',[.13 .17 .80 .74]); figure_FontSize=8; set(get(gca,'XLabel'),'FontSize',figure_FontSize,'Vertical','top'); set(get(gca,'YLabel'),'FontSize',figure_FontSize,'Vertical','middle'); set(findobj('FontSize',10),'FontSize',figure_FontSize); set(findobj(get(gca,'Children'),'LineWidth',0.5),'LineWidth',2);
% 采用 % 画图外观设置,type案例2。 % set(gca,'FontName','Times New Roman','FontSize',14) % 设置坐标轴刻度字体名称,大小 set(gca, 'fontsize', 14); set(gca, 'XMinorTick', 'on'); set(gca, 'YMinorTick', 'on'); set(gca, 'XGrid', 'on'); set(gca, 'YGrid', 'on'); set(gca, 'LineWidth', 1.5);
% label设置 xlabel('Time (Second)', 'fontsize', 16); ylabel('Amplitude', 'fontsize', 16); ylabel('a','FontName','Times New Roman','FontSize',14,'Rotation',0)
% 坐标轴范围axis ymin=**; ymax=**; xmin=**; xmax=**; % box = [-10.1 10.1 1.1*[min(t) max(t)]]; axis([xmin xmax ymin ymax]) % 设置坐标轴在指定的区间
% 同handle1命令 handle2=... handle3=...
% legend说明 % LEGEND(string1,string2,string3, ...) % LEGEND(...,'Location',LOC) 来指定图例标识框的位置
% 一个图例,可以直接放置 legend('First','Second','Third'); legend('First','Second','Third','Location','NorthEastOutside') legend('First','Second','Third','Location','best') % 图例位置放在最佳位置
% 多个图例 handle_1=axes('position',get(gca,'position'),... 'visible','off'); handle_11=legend(handle_1,[handle_name handle_name handle_name handle_name handle_name],... 'legend_name',... 'legend_name',... 'legend_name',... 'legend_name',... 'legend_name'); handle_11.FontSize=6; set(handle_11, 'Position', [0.45 0.8 0.1 0.1]); %位置属性,0-1设置
handle_2=axes('position',get(gca,'position'),... 'visible','off'); handle_21=legend(handle_2,[handle_name handle_name handle_name handle_name handle_name],... 'legend_name',... 'legend_name',... 'legend_name',... 'legend_name',... 'legend_name'); handle_21.FontSize=6; % 高版本使用 % set(handle_21,'fontsize',10) % 低版本使用 set(handle_21, 'Position', [0.6 0.8 0.1 0.1]); %位置属性,0-1设置
text(x,y,'Failure threshold','FontSize',16) ...
% title案例1 title('a','FontName','Times New Roman','FontWeight','Bold','FontSize',16)
% title案例2 string_1 = {'Predicting outcomes using SVR with linear kernel'; ['Training Set: mse = ' num2str(error_1(2)) ' R^2 = ' num2str(error_1(3))]; ['Testing Set mse = ' num2str(error_2(2)) ' R^2 = ' num2str(error_2(3))]}; title('标题Title','fontname','Times New Roman','Color','b','FontSize',20);
% title案例3 line1 = '适应度曲线MSE[ABCmethod]'; line2 = ['终止代数=', ... num2str(iter-1),',种群数量NP=', ... num2str(ABCOpts.ColonySize),')']; line3 = ['Best c=',num2str(GlobalParams(1)),' g=',num2str(GlobalParams(2)), ... ' MSE=',num2str(GlobalMin)]; title({line1;line2;line3},'FontSize',20);
% 保存 % print函数原本不是用来进行图像保存了,而是操作打印机的,但是这里我们可以借用下 % print 可作为日常绘图的首选。对格式,分辨率等各项指标做非常细致的定义,适合直接出图。 % print(figure_handle,fileformat,filename)
print(gcf, '-depsc2', 'file_name.eps'); print('-depsc2','-r1000','file_name.eps'); % print('-dpsc','file_name.eps'); % 不采用,产生的图像在中间,tex中呈现漂浮在文字之上。 print(gcf, '-dpng', '-r280', 'file_name.png'); print(gcf,'-r300','-dpdf','file_name.pdf'); print(gcf,'-r300','-djpeg','file_name.jpeg');
% Matlab提供直接的saveas函数可以将指定figure中的图像或者simulink中的框图进行保存 % saveas可以保存matlab自认的fig格式的图像,用来最后细修很有意义。 % saveas(figure_handle,filename,fileformat)
saveas(gca,'file_name.eps','psc2') % Matlab保存eps分成2个level,在使用saveas(gca,'**.eps')调用的level1的保存eps方式,所以彩色图像变成黑白的了。如果在命令中加入'psc2',此时,保存的图像是level2的,保存的图片就是eps格式的彩色图像。 saveas(gca,'file_name','png') %saveas(gcf,file_name,'-r1000','epsc'); %错误
% 典型常用的带变量保存命令(推荐使用) if save_figures filenm = ['file_name_' num2str(variable_name)]; print('-depsc2','-r1000',['file_path',filenm]); %1000dpi,产生的图像在左下角,tex中正常显示。 saveas(gcf,['file_path',filenm], 'fig') end
|