专题四MATLAB绘图

MATLAB绘图


一、二维曲线

1、plot函数

(1)基本用法
plot(x,y)
在这里插入图片描述
(2)最简单的plot函数调用格式
plot(x)

  • 当x为实向量时,以向量x的坐标为横坐标,元素的值为纵坐标绘制一条曲线。
    在这里插入图片描述
  • 当x为复向量时,以向量x的实部坐标为横坐标,虚部为纵坐标绘制一条曲线。
    在这里插入图片描述
    (3)plot(x,y)函数参数的变化形式
  • 当x是向量,y是矩阵
    如果矩阵y的列数等于x的长度,则以向量x为横坐标,以y的每个行向量为纵坐标绘制曲线,曲线的条数等于y的行数。
    如果矩阵y的行数等于x的长度,则以向量x为横坐标,以y的每个列向量为纵坐标绘制曲线,曲线的条数等于y的列数。
    在这里插入图片描述
  • 当x,y是同型矩阵时,以x,y对应的列元素为横、纵坐标分别绘制曲线,曲线的条数等于矩阵的列数。
    在这里插入图片描述
    (4)含多个输入参数的plot函数
    plot(x1,y1,x2,y2,……,xn,yn)
    其中每一向量对构成一组数据点的横、纵坐标,绘制一条曲线。
    在这里插入图片描述
    (5)含选项的plot函数
    plot(x,y,选项)
    在这里插入图片描述
    例子:用不同线形和颜色在同一坐标绘制曲线y=2e^(-0.5x)sin(2Πx)和其包络线。
    在这里插入图片描述

2、fplot函数

实际问题中,函数随着自变量的变化趋势往往未知,而plot函数的x取值一般数等间隔的,会影响实际函数的变化趋势。如图
在这里插入图片描述
fplot函数能解决这个问题
(1)基本用法
fplot(f,lims,选项)
其中,f代表一个函数,通常采用函数句柄的形式。lims为x轴的取值范围,用二元向量[xmin,xmax]描述,默认值为[-5,5]。选项定义与plot函数相同。
在这里插入图片描述
(2)双输入函数参数的用法
fplot(funx,funy,tlims,选项)
其中,funx,funy代表函数,通常采用函数句柄的形式。tlims为参数函数funx和funy的自变量的取值范围,用二元向量[tmin,tmax]描述。
例子:绘制曲线x=tsint,y=tcost
在这里插入图片描述

3、fimplicit函数

fimplicit(f,interval) 为 x 和 y 指定绘图区间。
例子:在 x 和 y 的默认区间 [-5 5] 绘制由函数 x 2 − y 2 − 1 = 0 x^2-y^2-1=0 x2y21=0 描述的双曲线。

fimplicit(@(x,y) x.^2 - y.^2 - 1)

在这里插入图片描述

二、绘制图形的辅助操作

1、图形标注

title(图形标题)
xlabel(x轴说明)
ylabel(y轴说明)
text(x,y图形说明)
legend(图例1,图例2,……)
(1)title函数

  • 基本用法
    title(图形标题)
    例子:绘制[-2Π,2Π]区间的正弦曲线并给图形加标题
    在这里插入图片描述
  • 在图形标题中适用LaTeX格式控制符
    在这里插入图片描述
  • 含属性设置的title函数
    title(图形标题,属性名,属性值)
    Color属性:用于设置图形标题文本的颜色
    在这里插入图片描述
    FontSize属性:用于设置标题文字的字号
    在这里插入图片描述
    (2)xlabel和ylabel函数
    xlabel(x轴说明)
    ylabel(y轴说明)
    在这里插入图片描述
    (3)text函数gtext函数
    text(x,y,说明)
    gtext(说明):随着鼠标十字光标的移动在图形确认说明的位置
    在这里插入图片描述
    (4)legend函数
    legend(图例1,图例2,……)
    在这里插入图片描述

2、坐标控制

(1)axis函数

  • axis([xmin,xmax,ymin,ymax,zmin,zmax])
    在这里插入图片描述
  • axis的其他用法
    –axis equal:横纵坐标轴采取等长刻度
    –axis square:产生正方形坐标系(默认为矩形)
    –axis auto:使用默认设置
    –axis off:取消坐标轴
    –axis on:显示坐标轴
    在这里插入图片描述
    (2)给坐标系加网格和边框
  • grid on:控制显示网格线
    grid off:控制不显示网格线
    grid:用于在两种状态之间进行切换
    程序中没有grid命令,默认是无网格线
    在这里插入图片描述
  • box on:控制显示边框线
    box off:控制不显示边框线
    box:用于在两种状态之间进行切换
    程序中没有box命令,默认是无边框

(3)例子:绘制sinx、sin2x、sin(x/2)的函数曲线并添加图形标注
在这里插入图片描述
在这里插入图片描述

3、图形保持

  • hold on:控制保持原有图形
    hold off:控制刷新图形窗口
    hold on:用于在两种状态之间进行切换
  • 例子:用图形保持功能绘制两个同心圆
    在这里插入图片描述
    在这里插入图片描述

4、图形窗口的分割

  • 子图:同一图形窗口中的不同坐标系下的图形为子图
  • subplot函数:subplot(m,n,p)
    其中,m和n指定将图形窗口分成m*n个绘图区,p指定当前活动区。
x=linspace(0,2*pi,60);
subplot(2,2,1)     
plot(x,sin(x)-1);
title('sin(x)-1');axis ([0,2*pi,-2,0])
subplot(2,1,2)     
plot(x,cos(x)+1);
title('cos(x)+1');axis ([0,2*pi,0,2])
subplot(4,4,3)      
plot(x,tan(x));
title('tan(x)');axis ([0,2*pi,-40,40])
subplot(4,4,8)        
plot(x,cot(x));
title('cot(x)');axis ([0,2*pi,-35,35])

在这里插入图片描述

三、其他形式的二维曲线

1、其他坐标系的二维曲线

(1)对数坐标图
semilogx(x1,y1,选项1,x2,y2,选项2,……)
semilogy(x1,y1,选项1,x2,y2,选项2,……)
loglog(x1,y1,选项1,x2,y2,选项2,……)
其中。semilogx函数x轴为常用对数刻度,y轴为线性刻度;semilogy函数x轴为线性刻度,y轴为常用对数刻度;loglog函数x轴和y轴均为常用对数刻度。
例子:绘制1/x的直角线性坐标图和三种对数坐标图

x=0:0.01:10;
y=1./x;
subplot(2,2,1);
plot(x,y)
title('plot(x,y)');
subplot(2,2,2);
semilogx(x,y);
title('semilogx(x,y)');
grid on;
subplot(2,2,3);
semilogy(x,y);
title('semilogy(x,y)');
grid on;
subplot(2,2,4);
loglog(x,y);
title('loglog(x,y)');
grid on;

在这里插入图片描述
(2)极坐标图
polar(theta,rho,选项)
其中,theta为极角,rho为极径,选项的内容与plot函数相同
例子:按极坐标方程ρ=1-sinθ绘制心形曲线

t = 0:pi/100:2*pi;
r = 1-sin(t);
subplot(1,2,1)
polar(t,r)
subplot(1,2,2)
t1 = t-pi/2;
r1 = 1-sin(t1);
polar(t,r1)

在这里插入图片描述

2、统计图

(1)条形类图形

  • 条形图
    – bar函数:绘制垂直条形图
    – barh函数:绘制水平条形图
    bar函数:bar(y,style)
    其中,参数y是数据,若y是向量则分别以每个元素的值作为每个矩形条的高度,以对应元素的下标作为横坐标。若y为矩阵则以y的每一行元素组成一组,用矩阵的行号作为横坐标分组绘制矩形条。选项style用于指定分组排列模式,类型有簇状分组:“grouped”和堆积分组:“stacked”,默认为簇状分组。
y=[1,2,3,4,5;1,2,1,2,1;5,4,3,2,1];
subplot(1,2,1);
bar(y)
title('簇状分组');
subplot(1,2,2)
bar(y,'stacked')
title('堆积分组')

在这里插入图片描述
bar函数:bar(x,y,style)
其中,x存储横坐标,y存储数据,y的行数要与x的长度相同。
例子:下表是某公司2015~2017年家电类商品1月份的销售数据,绘制条形图

冰箱空调洗衣机电视机油烟机
2015688011598102
2016758810299110
20178186125105115
x=[2015,2016,2017];
y=[68,80,115,98,102;
75,88,102,99,110;
81,86,125,105,115];
bar(x, y)
title('Group');

在这里插入图片描述

  • 直方图
    – hist函数:绘制直角坐标系下的直方图
    – rose函数:绘制极坐标系下的直方图
    hist函数:hist(y),hist(y,x)
    其中,y是要统计的数据,x用于指定区间的划分方式。若x是标量,则统计区间均分成x个小区间;若x是向量,则向量x中的每一个数指定分组中心值,元素的个数为数据分组数。x缺省时,默认按10个等分区间进行统计。
y=randn(500,1);
subplot(2,1,1);
hist(y);
title('高斯分布直方图');
subplot(2,1,2);
x=-3:0.2:3;
hist(y,x);
title('指定区间中心点的直方图')

在这里插入图片描述
rose函数:rose(theta,x)
其中,theta用于确定每一区间与原点的角度,选项x用于指定区间的划分方式,x缺省时,默认按20个等分区间进行统计。

y=randn(500,1);
theta=y*pi;
rose(theta)
title('在极坐标系下的直方图')

在这里插入图片描述
(2)面积类图形

  • 扇子形图
    pie函数:pie(x,explode)
    其中,x存储待统计数据。选项explode控制图块的显示模式,对用非零值的部分将从图形分离处
    例子:某次考试优秀、良好、中等、及格、不及格的人数分别为:5、17、23、9、4,试用扇形图统计,并凸显不及格的部分
score=[5,17,23,9,4];
ex=[0,0,0,0,1];
pie(score,ex)
legend('优秀', '良好', '中等', '及格', '不及格', ...
'location', 'eastoutside')
##'location'用于指定函数位置, 'eastoutside'表示图例放置在绘图区域右边的外侧

在这里插入图片描述

  • 面积图
    area函数:方法与plot函数相同,只是将所得曲线下方区域填充颜色
    (3)散点类图形
  • scatter函数:散点图
    scatter(x,y,选项,‘filled’)
    其中,x、y用于定位数据点,选项用于指定线性、颜色、数据点标记。如果数据点标记是封闭图形,可以用选项‘filled’指定填充数据点标记。该选项省略时,数据点是空心的。
    例子:以散点图形式绘制桃心曲线,曲线的参数方程如下:x=16(sint)^3 ;y=13cost-5cos2t-2cos3t-cos4t
t=0:pi/100:2*pi;
x=16*sin(t).^3;
y = 13*cos(t)-5*cos(2*t)-2*cos(3*t)-cos(4*t);
subplot(1,2,1);
scatter(x,y,'rd','filled')
subplot(1,2,2);
scatter(x,y,'rd')

在这里插入图片描述

  • stairs函数:阶梯图
X = linspace(0,4*pi,50);
Y = sin(X);
stairs(X,Y)

在这里插入图片描述

  • stem函数:杆图
X = linspace(0,2*pi,50)';
Y = cos(X);
stem(X,Y)

在这里插入图片描述

3、矢量类图形

(1)compass函数:罗盘图
compass(U,V) 绘制从点 (0, 0) 发射出的箭头。使用笛卡尔坐标 U 和 V 指定箭头方向,其中 U 表示 x 坐标,V 表示 y 坐标。箭头数量与 U 中的元素数相匹配。

u = [5 3 -4 -3 5];
v = [1 5 3 -2 -6];
compass(u,v)

在这里插入图片描述

(2)feather函数:羽毛图
feather(U,V) 绘制以 x 轴为起点的箭头。使用笛卡尔分量 U 和 V 指定箭头方向,其中 U 表示 x 分量,V 表示 y 分量。第 n 个箭头的起始点位于 x 轴上的 n。箭头的数量与 U 和 V 中的元素数相匹配。

t = -pi/2:pi/8:pi/2;
u = 10*sin(t);
v = 10*cos(t);
feather(u,v)

在这里插入图片描述

(3)quiver函数:箭头图
quiver(x,y,u,v)
其中,(x,y)指定矢量起点,(u,v)指定矢量终点。xx,y,u,v是同样大小的向量或同型矩阵,若省略x,y,则在x-y平面上均与取若干个点作为起点。
例:已知向量A、B,求A+B,并用矢量图表示。

A=[4,5]; B=[-10,0]; C=A+B;
hold on;
quiver(0, 0, A(1), A(2));
quiver(0, 0, B(1), B(2));
quiver(0, 0, C(1), C(2));
text(A(1),A(2),'A');text(B(1),B(2),'B'); text(C(1),C(2),'C'); 
axis ([-12, 6, -1, 6])
grid on

在这里插入图片描述

四、三维曲线

1、plot3函数

(1)基本用法:plot3(x,y,z)
其中,x,y,z组成一组曲线的坐标
例子:绘制一条空间折线

x=[0.2, 1.8, 2.5];
y=[1.3, 2.8, 1.1];
z=[0.4, 1.2, 1.6];
plot3(x,y,z)
axis([0, 3, 1, 3, 0, 2]);
grid on

在这里插入图片描述
例子:绘制螺旋曲线 x=sint+tcost;y=cost-tsint;z=t;(0≤t≤10Π)

t=linspace(0,10*pi,200);
x=sin(t)+t.*cos(t);
y=cos(t)-t.*sin(t);
z=t;
subplot(1,2,1)
plot3(x,y,z)
grid on
subplot(1,2,2)
plot3(x(1:4:200),y(1:4:200),z(1:4:200))
grid on

在这里插入图片描述
(2)plot3(X,Y,Z)
参数X,Y,Z是同型矩阵,以X,Y,Z对应列元素绘制曲线,曲线条数等于矩阵列数。
参数X,Y,Z中有向量,也有矩阵时,向量的长度应与矩阵相符。

t=0:0.01:2*pi;
t=t.';
x=[t,t,t,t,t];
y=[sin(t),sin(t)+1,sin(t)+2,sin(t)+3,sin(t)+4];
z=t;
plot3(x,y,z)
t=0:0.01:2*pi;
x=t;
y=[sin(t);sin(t)+1;sin(t)+2;sin(t)+3;sin(t)+4];
z=t;
plot3(x,y,z)

在这里插入图片描述
(3)含多组输入参数的plot3
plot3(x1,y1,z1,x2,y2,z2,……,xn,yn,zn)
每一组x、y、z向量构成一组数据点的坐标,绘制一条曲线。

t1=0:0.01:1.5*pi;
t2=0:0.01:2*pi;
t3=0:0.01:3*pi;
plot3(t1,sin(t1),t1, t2,sin(t2)+1,t2,t3,sin(t3)+2,t3)

在这里插入图片描述
(4)含选项的plot3
plot3(x,y,z,选项)
选项用于指定曲线的线型、颜色和数据点标记。
例子:绘制空间曲线x=cost;y=sint;z=2t;(0≤t≤6Π)

t=0:pi/50:6*pi;
x=cos(t);
y=sin(t);
z=2*t;
plot3(x,y,z,'p')
xlabel('X'),ylabel('Y'),zlabel('Z');
grid on

在这里插入图片描述

2、fplot3函数

fplot3(funx,funy,funz,tlims)
其中,funx,funy,funz代表定义曲线x、y、z坐标的函数,通常采用函数句柄的形式。tlmis为参数函数自变量的取值范围,用二元向量[tmin,tmax]描述,默认为[-5,5]。
例子:绘制墨西哥帽顶曲线,x=e(-t/10)sin5t;y=e(-t/10)cos5t;z=t;t∈[-12,12]

x=@(t) exp(-t/10).*sin(5*t);
y=@(t) exp(-t/10).*cos(5*t);
z=@(t) t;
fplot3(x,y,z,[-12,12],'r')

在这里插入图片描述

五、三维曲面

1、平面网格数据的生成

(1)利用矩阵运算生成
例子:

x=[2:6];
y=[3:8].';
X=ones(size(y))*x;
Y=y*ones(size(x));

在这里插入图片描述
在这里插入图片描述
则构成的平面网格中第3行第2列网格点的坐标就是(X32 ,Y32),即(3,5)。
(2)利用meshgrid函数生成
[X,Y]=meshgrid(x,y)
其中,参数x、y为向量,存储网格点坐标的X、Y为矩阵。

x=[2:6];
y=[3:8].';
[X,Y]=meshgrid(x,y)

在这里插入图片描述
若根据每一个网格点上的x、y坐标求函数值z,则得到函数值矩阵Z。矩阵X、Y、Z中的各个列向量,对应于一条曲线数据点的坐标。
例子:绘制空间曲线

x=[2:6];
y=[3:8]';
[X,Y]=meshgrid(x,y);
Z=randn(size(X));
plot3(X,Y,Z)
grid on

在这里插入图片描述

2、绘制三维曲面

(1)mesh函数和surf函数
mesh(x,y,z,c)
surf(x,y,z,c)
其中x,y是网格坐标矩阵,z是网格点的高度矩阵,c用于指定在不同高度下的曲面颜色。c省略时,颜色的设定正比于图形的高度。
例子:绘制三维曲面图z=xe^ (-x2-y2)

t=-2:0.2:2;
[X,Y]=meshgrid(t);
Z=X.*exp(-X.^2-Y.^2);
subplot(1,3,1)
mesh(X,Y,Z);
title('mesh函数')
subplot(1,3,2)
surf(X,Y,Z);
title('surf函数')
subplot(1,3,3)
plot3(X,Y,Z);
title('plot3函数')
grid on

在这里插入图片描述
(2)mesh函数和surf函数的其他调用格式
mesh(z,c)
sufr(z,c)
当x,y省略时,z矩阵的第2维下标当作x轴坐标,z矩阵的第1维下标当作y轴坐标。

t=1:5;
z=[0.5*t;2*t;3*t];
mesh(z);

在这里插入图片描述
(3)带等高线的三维网格曲面函数meshc
(4)带底座的三维网格曲面函数meshz
(5)具有等高线的曲面函数surfc
(6)具有光照效果的曲面函数surfl
例子:用以上四种绘制函数z=(x-1)2+(y-2)2-1的曲面图。其中x∈[0,2],y∈[1,3]。

[x,y]=meshgrid([0:0.1:2],[1:0.1:3]);
z=(x-1).^2+(y-2).^2-1;
subplot(2,2,1);
meshc(x,y,z);
title('meshc')
subplot(2,2,2);
meshz(x,y,z);
title('meshz')
subplot(2,2,3);
surfc(x,y,z);
title('surfc')
subplot(2,2,4);
surfl(x,y,z);
title('surfl')

在这里插入图片描述

3、标准三维曲面

(1)sphere函数
[x,y,z]=sphere(n)
产生3个(n+1)阶的方阵,采用这3个矩阵可以绘制出圆心位于原点、半径为1的单位球体。
(2)cylinder函数
[x,y,z]=cylinder(R,n)
其中,参数R是一个向量,存放柱面各个等间隔高度上的半径,n表示在圆柱圆周上有n个间隔点,默认为20个间隔点。

  • 例子:用cylinder函数分别绘制柱面、花瓶和圆锥面
subplot(1,3,1);
[x,y,z]=cylinder;
surf(x,y,z);
subplot(1,3,2);
t=linspace(0,2*pi,40);
[x,y,z]=cylinder(2+cos(t),30);
surf(x,y,z);
subplot(1,3,3);
[x,y,z]=cylinder(0:0.2:2,30);
surf(x,y,z);

在这里插入图片描述

  • 例子:用cylinder函数绘制两个相互垂直且直径相等的圆柱面的相交图形。
[x,y,z]=cylinder(1,60);
z=[-1*z(2,:);z(2,:)];#将原先z从[0,……,0;1,……,1]变成[-1,……,-1;1,……,1]
surf(x,y,z);
hold on
surf(y,z,x);
axis equal

在这里插入图片描述
(3)peaks函数
peaks函数是以下的多峰函数表达式。x∈[-3,3];y∈[-3,3]
在这里插入图片描述
Z = peaks; 返回一个 49×49 矩阵。
Z = peaks(n); 返回一个 n×n 矩阵。
Z = peaks(V); 返回一个 n×n 矩阵,其中 n = length(V)。
Z = peaks(X,Y); 在给定的 X 和 Y(必须大小相同)处计算 peaks 并返回大小相同的矩阵。

subplot(2,2,1);
peaks(10);
title('peaks(10)')
subplot(2,2,2);
peaks;
title('peaks')
subplot(2,2,3);
peaks(-3:0.2:3)
title('peaks(-3:0.2:3)')
subplot(2,2,4);
[x,y]=meshgrid(-2:0.1:2,0:0.1:5);
peaks(x,y);
title('peaks(x,y)')

在这里插入图片描述

4、fmesh函数和fsurf函数

用于绘制参数方程定义的曲面
fsurf(funx,funy,funz,uvlims)
fmesh(funx,funy,funz,uvlims)
其中,funx,funy,funz代表定义曲面x、y、z坐标的函数,通常采用函数句柄的形式。uvlims为funx,funy,funz的自变量的取值范围,用4元向量[umin,umax,vmin,vmax]描述,默认为[-5,5,-5,5]
例子:绘制螺旋曲面x=usinv;y=-ucosv;z=v;u∈(-5,5),v∈(-5,2)

funx=@(u,v)u.*sin(v);
funy=@(u,v)-u.*cos(v);
funz=@(u,v)v;
subplot(1,2,1)
fsurf(funx,funy,funz,[-5,5,-5,2])
title('fsurf')
subplot(1,2,2)
fmesh(funx,funy,funz,[-5,5,-5,2])
title('fmesh')

在这里插入图片描述

5、fimplicit3函数

fimplicit3(f,interval) 为 x、y 和 z 指定绘图区间。
例子:在 x 和 y 的默认区间 [-5 5] 绘制由函数 x 2 + y 2 − z 2 = 0 x^2+y^2-z^2=0 x2+y2z2=0 描述的双曲线。

f = @(x,y,z) x.^2 + y.^2 - z.^2;
fimplicit3(f)

在这里插入图片描述

六、图形修饰处理

1、视点处理

  • 方位角与仰角
    在这里插入图片描述
    (1)view函数的基本用法
    view(az,el)
    其中,az为方位角,el为仰角,系统默认方位角-37.5°,仰角30°
    例子:绘制函数z=(x-1)2+(y-2)2-1曲面,并从不同视点展示曲面。
[x,y]=meshgrid(0:0.1:2, 1:0.1:3);
z=(x-1).^2+(y-2).^2-1;
subplot(2,2,1); mesh(x,y,z)
title('方位角=-37.5{\circ},仰角=30{\circ}')
subplot(2,2,2); mesh(x,y,z)
view(0,90);title('方位角=0{\circ},仰角=90{\circ}')
subplot(2,2,3); mesh(x,y,z)
view(90,0); title('方位角=90{\circ},仰角=0{\circ}')
subplot(2,2,4); mesh(x,y,z)
view(-45,-60); title('方位角=-45{\circ},仰角=-60{\circ}')

在这里插入图片描述
(2)view函数的其他用法
view(x,y,z)
view(2):指从二维平面观察图形,即方位角为0°,仰角为90°
view(3)

2、色彩处理

(1)颜色的向量表示
向量元素在[0,1]范围内取值,3个元素以此表示红、绿、蓝3种颜色的相对亮度,称为RGB三元组。
在这里插入图片描述
(2)色图colormap

  • 色图矩阵
    色图是m行3列的矩阵,每一行是RGB三元组,定义了一个包含m种颜色的列表
    在这里插入图片描述
  • 内建色图
    是64行3列的矩阵
    在这里插入图片描述
  • 指定当前图形使用的色图
    colormap cmapname
    colormap(cmap)
surf(peaks)%色图为系统默认
colormap hot%将色图变为hot

在这里插入图片描述

  • 创建色图矩阵
  • 色图矩阵的每一行是RGB三元组,可以自定义色图矩阵,也可以用MATLAB提供的函数来定义。
    例子:创建一个灰色系列色图矩阵。
c=[0,0.2,0.4,0.6,0.8,1]';
cmap=[c,c,c];%也可以用 cmap=gray(6)来定义
surf(peaks)
colormap(cmap)

在这里插入图片描述
(3)三维图形表面的着色
可以用shading函数来改变着色方式。
shading faceted:将每个网格片用其高度对应的颜色进行着色,网格线是黑色,这是默认着色方式。
shading flat:每个网格片用同一个颜色进行着色,且网格线也用相应的颜色。
shading interp:网格片内采用颜色插值处理。
例子:使用同一色图,以不同的着色方式绘制圆锥体。

[x,y,z]= cylinder(pi:-pi/5:0,10);
colormap(lines);
subplot(1,3,1);
surf(x,y,z); shading flat
subplot(1,3,2);
surf(x,y,z); shading interp
subplot(1,3,3);
surf(x,y,z);

在这里插入图片描述

3、图形的裁剪处理

将图形中需要裁剪部分对应的函数值设置为NaN,这样在绘制图形时,函数值为NaN的部分将不显示出来,从而达到对图形裁剪的目的。

  • 例子:绘制3/4圆
t=linspace(0,2*pi,100);
x=sin(t);
y=cos(t);
p=y>0.5;%y中大于0.5的元素为1,其他的为0
y(p)=NaN;%将值为1的元素对应的y的元素赋为NaN
plot(x,y)
axis([-1.1,1.1,-1.1,1.1])
axis square
grid on

在这里插入图片描述

  • 例子:绘制3/4球面
[x,y,z]=sphere(60);
p=z>0.5;
z(p)=NaN;
surf(x,y,z)
axis([-1,1,-1,1,-1,1])
axis equal
view(-45,20)

在这里插入图片描述

七、交互式绘图工具

1、“绘图”选项卡

在这里插入图片描述
“绘图”选项卡的工具条提供了绘制图形的基本命令。

  • “所选内容”命令组:用于显示已选中用于绘图的变量;
  • “绘图”命令组:提供了绘制各种图形的命令;
  • “选项”命令组:用于设置绘图时是否新建图形窗口。

2、绘图工具

(1)显示绘图工具

  • “显示绘图工具和停靠图形”按钮
    在这里插入图片描述
  • 命令行窗口输入命令
    plottools

(2)绘图工具的组成

  • 图形选项板
  • 绘图浏览器
  • 属性编辑器
    -

3、图形窗口菜单和工具栏

(1)工具栏
在这里插入图片描述
(2)图形窗口菜单
图形绘制完成之后,可以用“文件”菜单中的“生成代码”命令,将实施在图形上的这些操作命令输出成脚本文件。也可以用“保存”命令将图形窗口内容保存为fig文件
在这里插入图片描述


总结

提示:这里对文章进行总结:例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

闲谈社

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值