• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

matlab中bar画自定义柱状图

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

周末下雨实验室里做作业,发现用excel画的柱状图略丑,且达不到我想要的样子,就各种百度找到了一点技巧,记录下来,方便自己或者有需要的同学使用

我想绘制这种一正一反的柱状图,且标注在图形的左右两边,样例如下:


若将一组为负值,直接bar(x,[y1,y2]),则图形上下会偏移错位,最后总结如下有注释的代码:

load s.mat%加载标注内容
x=2:2:46;

xx=1:2:47;%与上面x正好错位,使标注在图形左右两侧

%以下为分别两次利用bar进行两次绘制,并利用FaceColor属性进行颜色区分

bar(x,data(:,1),'FaceColor',[0.7 0.7 0.7],'BarWidth',0.5);
hold on
bar(x,-1.*data(:,2),'FaceColor',[0.05 .45 0.1],'BarWidth',0.5);
 ylabel('客流量(人次/小时)','FontSize',14)
title('全日断面客流量','FontSize',14)
set(gca,'yticklabel',get(gca,'ytick'));%y轴不显示科学计数法
set(gca, 'FontSize',12,'XTick',xx,'XTickLabel',station);%设置标注位置和标注内容
set(gca,'XTickLabelRotation',90)%使标注旋转角度
set(gca,'xaxislocation','origin')%使横轴标注平移到图形中间位置
legend('下行断面客流','上行断面客流');
%图形框的邮编和上边容易出现刻度,这往往是不需要的,可通过如下语句将其去掉:
box off  
ax2 = axes('Position',get(gca,'Position'),...  
           'XAxisLocation','top',...  
           'YAxisLocation','right',...  
           'Color','none',...  
           'XColor','k','YColor','k');  
set(ax2,'YTick', []);  
set(ax2,'XTick', []);  
box on  

效果如图:




鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap