MATLAB绘图样例

2021-02-09  本文已影响0人  可爱的阿笨猫

对于MATLAB绘图,简单的plot(x,y)绘制二维图已足够。但是为了美观和便于批量化,需要对图形进行高级设置。正所谓命令用法一堆,不如一个例子实用。

任务目标,从excel文件中提取出数据,绘制图形,并对图形外观修饰。

% matlab绘图样例--可爱的阿笨猫原创
clear            % 清除工作区变量
load plot1.mat;  % 导入数据
% M =readmatrix('data.xlsx','range','C1803:AAV1803'); % 从Excel导入数据
% y1=M(:,1:361);
% y2=M(:,362:722);
% x=-180:1:180;
% plot(x,y1,x,y2)
fg=figure;       %创建图窗
l1=plot(x,y1,'LineWidth',2);  %设置线宽
hold on
l2=plot(x,y2,'LineWidth',2);
hold on
title('18A单元Phi=0')          %设置标题

% 绘制参考线
yl1=get(gca,'Ylim');       % 获取y轴的范围
plot([-45,-45],yl1,'m--'); % 绘制x=-45的直线
hold on
plot([45,45],yl1,'m--'); % 绘制x=45的直线
hold on
plot([0,0],yl1,'m--'); % 绘制x=0的直线


legend('GainPhi','GainTheta')   % 标识各条线
xlabel('theta(degree)')         % x轴标题   
ylabel('Gain(dB)')              % y轴标题

ylim([-inf 6])                  % y轴刻度范围

xticks(-180:45:180)             % x轴显示刻度标识

% pbaspect([2 1.2 1])           % 可设置x,y轴横纵比

set(gcf,'position',[168,143,871,511])  %设置图窗大小
 
% set(gca,'Position',[.15 .15 .8 .75]);  % 设置图形大小 

%标记坐标点
text(0,y1(1,181),num2str(y1(1,181),'%0.2f'))

text(0,y2(1,181),num2str(y2(1,181),'%0.2f'))

text(-45,y1(1,136),num2str(y1(1,136),'%0.2f'))

text(-45,y2(1,136),num2str(y2(1,136),'%0.2f'))

text(45,y1(1,226),num2str(y1(1,226),'%0.2f'))

text(45,y2(1,226),num2str(y2(1,226),'%0.2f'))

% 图片保存

ax = gca;

exportgraphics(ax,'18.jpg','Resolution',300)

生成的图形如下所示


上一篇下一篇

猜你喜欢

热点阅读