Matlab进阶绘图(一)

1.Histogram

y=randn(1,1000);
subplot(2,1,1);   //啥意思呀???
hist(y,10);      //就是有十个方格
title('Bins=10');   //标题
subplot(2,1,2);
hist(y,50);     // 就是有五十个方格
title('Bins=50');

Matlab进阶绘图(一)

2.Bar Charts

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');

 

Matlab进阶绘图(一)

3.Stacked and Horizontal Bar Charts

x=[1 2 5 4 8];
y=[x;1:5];
subplot(1,2,1);
bar(y,'stacked');
title('stacked');
subplot(1,2,2);
barh(y);     //注意这里多了个h啊!
title('Hotizontal');

 Matlab进阶绘图(一)

4.Pie Charts

a=[10 5 20 30];
subplot(1,3,1); pie(a);
subplot(1,3,2);pie(a,[1,1,1,1]);
subplot(1,3,3);pie3(a,[0,0,0,1]);

注意:【1,1,1,1】的意思是让所有的板块都分开有间隙;如果全是0,那就是都没有间隙;想让哪一块有间隙,那就让按照a的顺序设置成0即可

例如;subplot(1,3,2);pie(a,[0,0,1,0]);

效果图为:

Matlab进阶绘图(一)

5.polar charts

x=1:100;
theta=x/10;
r=log10(x);
polar(theta,r);

Matlab进阶绘图(一)

x=1:100;
theta=x/10;
r=log10(x);
subplot(1,4,1);
polar(theta,r);

theta=linspace(0,2*pi);
r=cos(4*theta);
subplot(1,4,2);
polar(theta,r);

theta=linspace(0,2*pi,6);
r=ones(1,length(theta));
subplot(1,4,3);
polar(theta,r);

Matlab进阶绘图(一)

 6.Logarithm Plots

x=logspace(-1,1,100);   //就是十的负一次方到十的一次方,中间有一百个数字
y=x.^2;              //y是x的平方,那就是十的负二次方到十的二次方,中间有一百个数字
subplot(2,2,1);
plot(x,y);                          //线性的
title('Plot');

subplot(2,2,2);
semilogx(x,y);          //x轴取log的对数,那就是-1到1,等差为1
title('Semoilogx');

subplot(2,2,3);
semilogy(x,y);        //y轴取log的对数,那就是-2到2,等差为2
title('Semilogy');

subplot(2,2,4);
loglog(x,y);          //x轴和y轴都取对数,那就是loglog
title('Loglog');

 Matlab进阶绘图(一)

(视频20分钟处)