matlab绘图问题,如何在图上添加数据

来源:百度知道 编辑:UC知道 时间:2024/05/30 11:50:16
如下我写的简单的小程序,画了一个棒状图,我想在每个棒状上面标上数字,例如第一个棒状上标P=0.5

等等。
还有如何把下面X的坐标换上我自己标注的内容,例如1修改成math,
2修改成history,谢谢。
P_num=5;
P=linspace(0,0,11);
P(1)=0.50; P(2)=0.30; P(3)=0.10; P(4)=0.07;
P(5)=0.03;

b=linspace(0,0,5);
b(1)=P(1);
for i=2:11
b(i)=P(i)+b(i-1);
end

n=1000;
a=linspace(0,0,5);

x=rand(1,n);
for i=1:n
for j=1:5
if x(i)<b(j)
a(j)=a(j)+1;
break;
end
end
end

z=linspace(1,P_num,P_num);

bar(z,a/n);
axis([0,P_num+1,0,1])

在绘制图形时,可以对图形加上一些说明,如图形的名称、坐标轴说明以及图形某一部分的含义等,这些操作称为添加图形标注。有关图形标注函数的调用格式为:
title(’图形名称’) (都放在单引号内)
xlabel(’x轴说明’)
ylabel(’y轴说明’)
text(x,y,’图形说明’)
legend(’图例1’,’图例2’,…) P190
其中,title、xlabel和ylabel函数分别用于说明图形和坐标轴的名称。text函数是在坐标点(x,y)处添加图形说明。(P88 或用gtext命令)。legend函数用于绘制曲线所用线型、颜色或数据点标记图例,图例放置在空白处,用户还可以通过鼠标移动图例,将其放到所希望的位置。除legend函数外,其他函数同样适用于三维图形,在三维中z坐标轴说明用zlabel函数。
上述函数中的说明文字,除了使用标准的ASCII字符外,还可以使用LaTex(一种流行的数学排版软件)格式的控制字符,这样就可以在图形上添加希腊字符,数学符号和公式等内容。在Matlab支持的LaTex字符串中,用/bf , /it , /rm控制字符分别定义黑体、斜体和正体字符,受LaTex字符串控制部分要加大括号{}括起来。例如,text(0.3,0.5,’the usful {/bf MATLAB}’),将使MATLAB一词黑体显示。一些常用的LaTex字符见表,各个字符可以单独使用也可以和其他字符及命令配合使用。如text(0.3 ,0.5 ,’sin({/omega}t+{/beta})’)