主题:紧急求救,事关重大
yfchenth
[专家分:110] 发布于 2008-03-08 10:29:00
请问高手们,我现在想要画一个条形图用bar命令,图的纵坐标是26个英文字母在一篇文档中所占的百分比数据,然而横轴必须是a-z的26个英文字母,这样就正好说明了这一篇文档中每一个字母所占的百分比了,但是横轴怎么也画不出字母,老是有1-26的这些数字干扰,请问有什么命令可以办到这件事情。
回复列表 (共4个回复)
沙发
sjohn [专家分:5600] 发布于 2008-03-08 17:20:00
呵呵,事关重大应该把干活的人换掉才对啊
板凳
sjohn [专家分:5600] 发布于 2008-03-08 17:29:00
抱歉开个玩笑啦,建议你用Plot tools,这种GUI的做法比较难描述。关键是修改到X Axis的X Ticks的各个Location对应的Labels属性
如果用另一个好描述的方法,就请你看Matlab自带帮助里的例子,悟出来怎么修改成你自己的需要了
x = -pi:.1:pi;
y = sin(x);
plot(x,y)
set(gca,'XTick',-pi:pi/2:pi)
set(gca,'XTickLabel',{'-pi','-pi/2','0','pi/2','pi'})
3 楼
yfchenth [专家分:110] 发布于 2008-03-08 19:43:00
请问,哪我想在set(gca,'XTickLabel',{'-pi','-pi/2','0','pi/2','pi'})中-pi, -pi/2一直接下去写a-z等26个字母怎么办,能用循环吗?否则也不能用手写的方式把26个字母分别填进去呀?
谢谢了,好上火呀
4 楼
sjohn [专家分:5600] 发布于 2008-03-08 20:48:00
用手写也没事啊
另外我知道
>> char(65:65+26-1)
ans =
ABCDEFGHIJKLMNOPQRSTUVWXYZ
>> char(97:97+26-1)
ans =
abcdefghijklmnopqrstuvwxyz
>> a = rand(26,1);
>> b = 1:26;
>> bar(b,a)
>> set(gca,'XTick',1:1:26)
>> set(gca,'XTickLabel',{'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'})
我来回复