MATLAB二维绘图其他特殊的二维绘图函数介绍及用法

Posted zhicungaoyuan-mingzhi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MATLAB二维绘图其他特殊的二维绘图函数介绍及用法相关的知识,希望对你有一定的参考价值。

MATLAB二维绘图(四)其他特殊的二维绘图函数介绍及用法

1、使用semilogy、semilogx和loglog绘制指数函数的图像,示例:

%% 对指数进行绘图,使用不同的绘图函数
clear; clc; close all;
x = logspace(-1,1,100);  % 产生间距,在10^{-1}到10^{1}的100个点
y = x.^2;
subplot(2,2,1); 
plot(x,y);   % 正常使用plot进行绘图
title('Plot');
subplot(2,2,2); 
semilogx(x,y);    % 对x轴绘制间距为10的指数次方
title('Semilogx');
subplot(2,2,3); 
semilogy(x,y);   % 对y轴绘制间距为10的指数次方
title('Semilogy');
subplot(2,2,4); 
loglog(x, y);   % 对x,y绘制
title('Loglog');
set(gca,'XGrid','on');   % 显示网格

效果显示:
技术图片
2、使用hist函数绘制柱状图,示例:

%% 显示柱状图
clear; clc; close all;
y = randn(1,100);   % 产生随机数,1000个
subplot(2,1,1);
hist(y,10);  % 显示柱状图
title('Bins = 10');
subplot(2,1,2);
hist(y,50);
title('Bins = 50');

效果显示:
技术图片
3、使用bar函数绘制条形图,示例:

%% 使用bar函数画条状图
clear; clc; close all;
x = [1 2 5 4 8]; 
y = [x;1:5];
subplot(1,3,1); 
bar(x);   % 一维条状图
title('A bargraph of vector x');

subplot(1,3,2); 
bar(y); % 二维条状图
title('A bargraph of vector y');

subplot(1,3,3); 
bar3(y);  % 三维条状图
title('A 3D bargraph');

效果显示:
技术图片
4、使用pie函数绘制饼状图,示例:

%% 饼状图
clear; clc; close all;
a = [10 15 20 30];   % 数据的占比
subplot(1,3,1); 
pie(a);  % 画出饼状图,并且自动计算出百分比
subplot(1,3,2); 
pie(a, [0,0,0,1]);   % 将第四个饼状图提取出来
subplot(1,3,3); 
pie3(a, [0,0,0,1]);  % 画三维饼状图,并且最后一个提取出来

效果显示:
技术图片
5、使用polar函数绘制极坐标图,示例:

%% 极坐标图
clear; clc; close all;
x = 1:100; 
theta = x/10; 
r = log10(x);
polar(theta,r);  % 只需要给出角度和半径即可

效果显示:
技术图片
6、使用stairs函数绘制阶梯图,示例:

%% 阶梯图
clear; clc; close all;
x = linspace(0, 4*pi, 40); 
y = sin(x);
stairs(y);  % 阶梯图

效果显示:
技术图片
7、使用stem绘制杆状图,示例:

%% 杆状图
clear; clc; close all;
x = linspace(0, 4*pi, 40); 
y = sin(x);
stem(y);  % 杆状图

效果显示:
技术图片
8、使用scatter函数绘制散点图,示例:

%% 散点图
clear; clc; close all;
figure;
x=[1 3 4 7 9 10 15];
y=[5 3 5 9 7 3 7];
subplot(1,2,1);
scatter(x,y);   % 显示散点
subplot(1,2,2);
scatter(x,y,[],[1 0 0],'fill')   % 散点的颜色和填充,[]表示圆的大小相同

效果显示:
技术图片
9、使用compass函数绘制罗盘图,示例:

%%  绘制罗盘图
clear ;clc; close all;
x=[1 -3 5 -6 8 9];
y=[5 7 -9 12 15 -9];
figure;
compass(x,y,'r');       % 绘制罗盘图

效果示例:
技术图片
10、使用feather函数绘制羽毛图,示例:

%% 羽毛图
clear;clc; close all;
x=[1 3 5 6 8 9];
y=[5 7 -9 3 -5 2];
figure;
feather(x,y);  % 羽毛形状的图

效果显示:
技术图片
11、使用comet函数绘制彗星图,示例:

%% 绘制彗星图,动态图
clear ;clc; close all;
x = 0:pi/50:2*pi;
y = sin(x);
comet(x,y);  % 画动态图

效果显示:
技术图片
12、使用boxplot函数绘制盒图,示例:

%%   正整数的频率表
clear;clc; close all;
a=normrnd(1,4,50,1);
b=normrnd(5,1,50,1);
x=[a b];
subplot(1,2,1);
boxplot(x,'notch','on','symbol','b*','orientation','vertical');
subplot(1,2,2);
boxplot(x,'notch','off','symbol','r+','orientation','horizontal');

效果显示:
技术图片
13、使用plotyy同时绘制两条曲线,示例:

%% 使用plotyy画两条曲线,修改曲线的属性
clear; clc; close all;
x = 0:0.01:20;
y1 = 200*exp(-0.05*x).*sin(x);
y2 = 0.8*exp(-0.5*x).*sin(10*x);
[AX,H1,H2] = plotyy(x,y1,x,y2);  % 获取axes句柄和两条线段的句柄
set(get(AX(1),'Ylabel'),'String','Left Y-axis');  % 设置线段1的label
set(get(AX(2),'Ylabel'),'String','Right Y-axis');  % 设置线段2的label
title('Labeling plotyy');  % 显示标题
set(H1,'LineStyle','--');  % 设置两条线的风格 
set(H2,'LineStyle',':');

效果显示:
技术图片
14、使用fill函数绘制填充特殊图形。示例:

%% 画特殊的图形,并且填充颜色
clear; clc; close all;
t =(1:2:15)'*pi/8;   % 画8边形,将一个圆分为16份
x = sin(t); % x的表示和y的表示
y = cos(t);

subplot(1,2,1);
h = fill(x,y,'r'); % 填充画出来的封闭图形
set(h,'LineWidth',5);   % 设置线宽的大小
axis square off;  % 不显示axes
text(0,0,'STOP','Color', 'w', 'FontSize', 40, ...
'FontWeight','bold', 'HorizontalAlignment', 'center');

t1 =(1:4)'*pi/2; 
x1 = sin(t1);
y1 = cos(t1);
subplot(1,2,2);
h = fill(x1,y1,'y');
set(h,'LineWidth',5);   % 获取句柄h设置边框线段的大小
axis square off;   
text(0,0,'WALT','Color', 'b', 'FontSize', 30, ...
'FontWeight','bold', 'HorizontalAlignment', 'center');

效果显示:
技术图片
15、使用fplot绘制光滑的曲线,示例:

%%  使用fplot绘制光滑的曲线图
clear; clc; close all;
x=-2:0.1:4;
subplot(1,2,1);
plot(x,humps(x));
title('plot');
subplot(1,2,2);
fplot(@humps,[-2 4])  % 光滑绘图
title('fplot');

效果显示:
技术图片

以上是关于MATLAB二维绘图其他特殊的二维绘图函数介绍及用法的主要内容,如果未能解决你的问题,请参考以下文章

MATLAB 绘图函数总结

MATLAB 绘图函数总结

MATLAB 绘图函数总结

[Matlab]二维隐函数绘图

MATLAB绘图功能

matlab绘图函数条形图极坐标土折线图等matlab图行绘制八