我是靠谱客的博主 羞涩时光,最近开发中收集的这篇文章主要介绍MATLAB学习系列——向量与曲线绘图向量绘图,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

向量

1.norm(a) %向量a的模
2.dot (a,b)或 a * b ’    %向量a与b的数量积
3.cross (a,b)  %向量a与b的向量积(只能作三维的)
4.dot(cross(a,b),c)	   %向量的混合积 
5.a.*b     %向量a与b的对应元素相乘
6.a.^2       %向量a 的每个元素取平方

绘图

1.plot(x,y, 'r+-')	 %离散数据画函数曲线图
2.fplot(y,[a,b],)	 %连续函数y在区间[a,b]上做曲线图
3.ezplot(y,[a,b])	 %连续函数y在区间[a,b]上做曲线图
4.polar(t,r)		%极坐标绘曲线图
5.hold  on           	%保持图形
6.hold  off            	%取消保持图形
7.clf                 	%删除图形
8.subplot(m,n,p)  %分块绘图,分割成m行n列,p为编号
1.line(x,y)     % 将各数据点用折线连接
2.plot(x1,y1,x2,y2)	 %同一图中绘制多条曲线
3.grid on (off ) 	%在图形窗口添加(去掉)网格
4.[x,y,z]=meshgrid(x,y,z)	 %三维网格坐标的生成
5.ginput(n)      	 %用鼠标获取图形中n个点的坐标
6.axis([xmin,xmax,ymin,ymax]) %确定坐标系的范围
7.axis(‘equal’)	 %各坐标轴刻度增量相同
8.axis('on')	 %返回(缺省的)坐标轴显现状态 
xlabel('x轴')   		 %x轴加标志“x轴”
ylabel('y轴')   		 %y轴加标志“y轴”
zlabel('z轴')		 %z轴加标志“z轴”
title(‘f曲线图’) 	           %加图名“f曲线图”
legend('y1 ' , 'y2')	 %为图形添加图例
text(x,y, '文本')	 %在指定位置添加文本字符串
gtext('文本')	 %用鼠标在图形上主放置文本
set(gca,'xlim',[0 80]) 
%设置当前坐标轴的x坐标范围为0~80

绘制对数图、极坐标图及条形图

1.fplot(fname,lims) 绘制fname指定的函数的图形.
2.polar( theta, rho) 使用相角theta 为极坐标形式绘图,相应半径为rho,其次可使用grid命令画出极坐标网格.
3.loglog  用log10-log10标度绘图.
4.semilogx 用半对数坐标绘图,x轴是log10,y是线性的.
5.semilogy 用半对数坐标绘图,y轴是log10,x是线性的.
6.bar(x) 显示x向量元素的条形图,bar不接受多变量.
7.hist 绘制统计频率直方图.
8.histfit(data,nbins) 绘制统计直方图与其正态分布拟合曲线.

综合绘图

在这里插入图片描述

x=0:pi/8:2*pi;
subplot(2,3,1)
plot(x,cos(x),'-*');
title(cos(x));
subplot(2,3,2)
fplot(@cos,[0 2*pi]);
t=0:0.01:2*pi;
subplot(2,3,3)
polar(t,sin(6*t)) ;
s=normrnd(10,2,10000,1); %生成满足正态分布的随机数(期望,方差,生成1000*1矩阵)
subplot(2,3,4)
histfit(s);
title('正态分布');
yu=rand(30000,1);     %% 平均分布
subplot(2,3,5)
hist(yu, 25);
title('平均分布');
subplot(2,3,6)
x=0:0.00001:2*pi;
plot(x,sin(x),'-r');
%set(gca,'xtick',0:pi/8:2*pi);%x轴划分为5个刻度
set(gca,'xticklabel',{'0','pi/8','pi/4','pi/2','pi','9*pi/8','5*pi/4','11*pi/8','2*pi'});%标注
text(pi/4,sin(pi/4),'leftarrow sin(pi/4)'); %标注
text(pi/6,sin(pi/6),'leftarrow sin(pi/6)') ;%标注
title('曲线y=sin(theta)'); %标注图形名

参数方程

t=linspace(0,2,50)*pi;
x=cos(t);
y=sin(t);
plot(x,y);
axis equal;  %看起来是圆
text(0,0,'x^2+y^2=1');

绘制多条曲线

x=linspace(0,2*pi);	%定义数组x默认100个数据
k=5:5:30;			%定义数组k
f=['r’,‘g’,‘b’,‘m’,‘k’,‘c']; %定义颜色数组f
for i=1:6
    y=k(i)*(sin(x)./(1+x));%定义函数
    plot(x,y,f(i));%绘制不同颜色的图形
    hold on %图形保持
end

手绘图

在这里插入图片描述

figure
axis([0,10,0,10])
hold on
k=input('k=');
for  i=1:k
    x=[];y=[];xi=[];yi=[];
    while(1)
        [xx,yy,b]=ginput(1); %读取1次
        plot(xx,yy,'r.');
        x=[x,xx];y=[y,yy];
        if b==3
            break
        end
    end
    plot(x,y)
    eval(['a',num2str(i),'=', 'x',';']);   %记录一笔的横坐标数组
    eval(['b',num2str(i),'=', 'y',';']);   %记录一笔的纵坐标数组  
end
hold off

最后

以上就是羞涩时光为你收集整理的MATLAB学习系列——向量与曲线绘图向量绘图的全部内容,希望文章能够帮你解决MATLAB学习系列——向量与曲线绘图向量绘图所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(38)

评论列表共有 0 条评论

立即
投稿
返回
顶部