matlab 直方图 整理
2014-05-29 16:37
211 查看
绘制直方图(水平和垂直的)
语法
bar(Y)bar(x,Y)
bar(...,width)
bar(...,'style')
bar(...,'bar_color')
bar(axes_handle,...)
h = bar(...)
hpatches = bar('v6',...)
barh(...)
h = barh(...)
hpatches = barh('v6',...)
描述
一个条形图展示向量或者矩阵的值,使用水平的或者垂直的直方图。1、bar(Y):为Y中的每一个元素绘制一个条。如果Y是一个矩阵,会对每一行元素所产生的条进行分组。当Y是一个向量时,x轴的刻度范围是1到Y的长度,当Y是一个矩阵时,长度即是行的数量。
2、bar(x,Y):为Y中的每一个元素在指定的x位置绘制条形图。x是一个单调增加的向量,其用来定义垂直直方图中的x轴间距。如果Y是一个矩阵,bar对Y中的每行元素在指定x位置进行分组。
3、bar(...,width):设置相关bar的宽度和控制一个组之间bar的距离。默认宽度是0.8,所以如果你不指定x,这些一个组内的bars有一个比较小的距离。如果宽度是1,则一个组内的bars是相互紧挨着的。
4、bar(...,'style'):指定bars的样式。样式是'grouped' or 'stacked'。默认是'grouped'
'grouped':表示展示m个组的每组n个垂直直方图。m代表矩阵行数,n代表矩阵列数。
'stacked':表示为每一行展示一个bar,bar的高度是每一行元素的总和。每一个bar是多种颜色,根据颜色的分布显示各元素对总元素的贡献。
5、bar(...,'bar_color'):使用单个字母缩写 'r', 'g', 'b', 'c', 'm', 'y', 'k', or 'w'所指定的颜色展示bar.
6、bar(axes_handles,...) and barh(axes_handles,...):使用指定句柄的坐标轴代替当前坐标轴。
7、h = bar(...):返回barseries图形对象句柄的向量。bar为Y中每列创建一个barseries图形对象。
8、barh(...) and h = barh(...):创建水平直方图。Y决定bar的长度。向量x是一个自增的向量,用来定义y轴上直方图的间距。
向后兼容版本
hpatches = bar('v6',...) and hpatches = barh('v6',...):对于兼容版本MATLAB 6.5和更早,返回 的是patch对象的句柄而不是 barseries对象的。示例
Single Series of Data
这个示例绘制钟形曲线作为直方图,设置其颜色为红色。x = -2.9:0.2:2.9;
bar(x,exp(-x.*x),'r')
Bar Graph Options
这个示例显示一些条形图设置选项Y = round(rand(5,3)*10);
subplot(2,2,1)
bar(Y,'group')
title 'Group'
subplot(2,2,2)
bar(Y,'stack')
title 'Stack'
subplot(2,2,3)
barh(Y,'stack')
title 'Stack'
subplot(2,2,4)
bar(Y,1.5)
title 'Width = 1.5'
Setting Properties with Multiobject Graphs
这个示例展示了3组,每组5个barseries对象的直方图。由于所有的barseries对象共用同一个基线,所以你可以使用任何一个对象去设置其BaseLine属性。这个例子使用返回h的第一个句柄。Y = randn(3,5);
h = bar(Y);
set(get(h(1),'BaseLine'),'LineWidth',2,'LineStyle',':')
colormap summer % Change the color scheme
1、在matlab中怎么输入特殊符号
下标用 _(下划线),右上标 ^,如cm^-^1,g.kg^-^1,希腊字母等特殊字符用 \加拼音 如
α \alpha ,β \beta ,γ \gamma ,θ \theta ,Θ \Theta ,Г \Gamma ,δ \delta ,Δ \Delta ,ξ \xi ,Ξ \Xi ,η \elta,
ε \epsilong ,ζ \zeta ,μ \miu ,υ \nu ,τ \tau ,λ \lamda ,∧ \Lamda ,π \pi ,∏ \Pi ,σ \sigma ,∑ \Sigma ,φ \phi ,Φ \Phi ,ψ \psi ,Ψ \Psi ,χ \chi ,ω \ommiga ,Ω \Ommiga ,< \leq ,> \geq ,不等于 \neq ,<< \ll ,>> \gg ,正负 \pm ,左箭头 \leftarrow ,右箭头 \rightarrow ,上箭头 \uparrow
例 text(2,3,'\alpha_2^\beta')
2,注: 可用{}把须放在一起的括起来
3,Matlab图形中允许用TEX文件格式来显示字符。使用\bf,\it,\rm表示黑体,斜体,正体字符,特别注意大括号{ }的用法。
4,比如想打一个符号:x的正上方加一横,作为横轴的名称, xlabel('x¯','Interpreter','latex','fontsize',18)
5,画图命令积累,
subplot(3,2,1)
plot(x)
title('默认格式')
subplot(3,2,2)
plot(x)
set(gca,'xtick',[1 3 6 8]);
set(gca,'ytick',[]);
title('X自定义间隔,Y关闭')
subplot(3,2,3)
plot(x)
set(gca,'xtick',[1 3 6 8]);
set(gca,'xticklabel',sprintf('%03.4f|',get(gca,'xtick')))
set(gca,'ytick',[2 4 5 7]);
set(gca,'yticklabel',{'Two','Four','Five','Seven'});
title('XY自定义间隔、精度及显示方式')
subplot(3,2,4)
plot(x)
set(gca,'xminortick','on');%style 5
set(gca,'ticklength',[0.05 0.025]);
set(gca,'tickdir','out');
title('XY坐标刻度显示方式')
subplot(3,2,5)
plot(x)
set(gca,'xtick',[min(x) (max(x)+min(x))/2 max(x)]);
set(gca,'ytick',[min(x) (max(x)+min(x))/2 max(x)]);
title('论文中常用的标准3点式显示')
x=20:10:20000;
y=rand(size(x));
subplot(3,2,6)
semilogx(x,y);
set(gca,'XLim',[20 20000]);
set(gca,'XMinorTick','off');
set(gca,'XTick',[20 31.5 63 125 250 500 1000 2000 4000 8000 16000]);
set(gca,'XGrid','on');
set(gca,'XMinorGrid','off');
title('自定义网格显示')
plot 建立向量或矩阵各队队向量的图形 字元 颜色 字元 图线型态
loglog x、y轴都取对数标度建立图形 y 黄色 . 点
semilogx x轴用于对数标度,y轴线性标度绘制图形 k 黑色 o 圆
semilogy y轴用于对数标度,x轴线性标度绘制图形 w 白色 x x
title 给图形加标题 b 蓝色 + +
xlabel 给x轴加标记 g 绿色 * *
ylabel 给y轴加标记 r 红色 - 实线
text 在图形指定的位置上加文本字符串 c 亮青色 : 点线
gtext 在鼠标的位置上加文本字符串 m 锰紫色 -. 点虚线
grid 打开网格线 -- 虚线
hold on 命令用于在已画好的图形上添加新的图形
1 x=0:0.001:10; % 0到10的1000个点(每隔0.001画一个点)的x座标
y=sin(x); % 对应的y座标
plot(x,y); % 绘图
注:matlab画图实际上就是描点连线,因此如果点取得不密,画出来就成了折线图,请试验之
2 Y=sin(10*x);
plot(x,y,'r:',x,Y,'b') % 同时画两个函数
3 若要改变颜色,在座标对后面加上相关字串即可:
x=0:0.01:10;
plot(x,sin(x),'r')
4 若要同时改变颜色及图线型态(Line style),也是在坐标对后面加上相关字串即可:
plot(x,sin(x),'r*')
5 用axis([xmin,xmax,ymin,ymax])函数来调整图轴的范围
axis([0,6,-1.5,1])
6 MATLAB也可对图形加上各种注解与处理:(见上表)
xlabel('x轴'); % x轴注解
ylabel('y轴'); % y轴注解
title('余弦函数'); % 图形标题
legend('y = cos(x)'); % 图形注解
gtext('y = cos(x)'); % 图形注解 ,用鼠标定位注解位置
grid on; % 显示格线
7画椭圆
a = [0:pi/50:2*pi]'; %角度
X = cos(a)*3; %参数方程
Y = sin(a)*2;
plot(X,Y);
xlabel('x'), ylabel('y');
title('椭圆')
8 绘制函数 在0 ≤ x ≤ 1时的曲线。
x=0:0.1:1
y=x.*exp(-x) %为什么用点运算?若不用会怎样
plot(x,y),xlabel('x'),ylabel('y'),title('y=x*exp(-x)')
9 画出衰减振荡曲线 与它的包络线 及 。t 的取值范围是[0, 4π] 。
t=0:pi/50:4*pi;
y0=exp(-t/3);
y=exp(-t/3).*sin(3*t);
plot(t,y,'-r',t,y0,':b',t,-y0,':b') % -r表示红色实线,:b表示蓝色点线,看上表
grid
10 在同一个画面上建立几个坐标系, 用subplot(m,n,p)命令;把一个画面分成m×n个图形区域, p代表当前的区域号,在每个区域中分别画一个图,如
x=linspace(0,2*pi,30); y=sin(x); z=cos(x);
u=2*sin(x).*cos(x); v=sin(x)./cos(x);
subplot(2,2,1),plot(x,y),axis([0 2*pi -1 1]),title('sin(x)')
subplot(2,2,2),plot(x,z),axis([0 2*pi -1 1]),title('cos(x)')
subplot(2,2,3),plot(x,u),axis([0 2*pi -1 1]),title('2sin(x)cos(x)')
subplot(2,2,4),plot(x,v),axis([0 2*pi -20 20]),title('sin(x)/cos(x)')
三维图形
11三维螺旋线:
t=0:pi/50:10*pi;
plot3(sin(t),cos(t),t) %参数方程
grid %添加网格
12 t=linspace(0,20*pi, 501);
plot3(t.*sin(t), t.*cos(t), t); %注意点乘
也可以同时画出两条曲线,格式与二维情况类似,兹不举例。
13用mesh命令画曲面
画出由函数 形成的立体网状图:
a=linspace(-2, 2, 25); % 在x轴上从(-2,2)取25点
b=linspace(-2, 2, 25); % 在y轴上取25点
[x,y]=meshgrid(a, b); % x和y都是21x21的矩阵
z=x.*exp(-x.^2-y.^2); % 计算函数值,z也是21x21的矩阵
mesh(x, y, z); % 画出立体网状图
14 surf和mesh的用法类似:
a=linspace(-2, 2, 25); % 在x轴上取25点
b=linspace(-2, 2, 25); % 在y轴上取25点
[x,y]=meshgrid(a, b); % x和y都是21x21的矩阵
z=x.*exp(-x.^2-y.^2); % 计算函数值,z也是21x21的矩阵
surf(x, y, z); % 画出立体曲面图
相关文章推荐
- matlab绘制直方图的方法
- [matlab] matlab 画直方图
- matlab画直方图
- MATLAB中文论坛帖子整理(GUI)
- 【kate整理】matlab求商,求余数
- MATLAB 中文论坛相关帖子整理
- matlab实现将彩色图像(R,G,B)色分量的直方图匹配,并计算其相关性
- MATLAB内存整理——pack函数
- 自己的Matlab代码整理
- matlab 字符串文件直方图统计字母个数
- 红外图像处理之直方图均衡的matlab源码与效果验证
- matlab中有关计时函数整理
- MATLAB中常见的程序出错问题整理(转)
- matlab直方图均衡
- RGB转XYZ色彩空间开发及matlab实验笔记整理
- matlab在3维空间非x-y平面绘制直方图
- [整理]Matlab之中心平滑滤波
- 直方图和直方图均衡的Matlab完整程序(数字图像处理)
- 整理:VSCode配置Matlab环境
- Matlab常用图像函数整理