zoukankan      html  css  js  c++  java
  • Matlab实现画柱状图坐标标签旋转

    引言:

    在用matlab画柱状图或者其他图的时候,你是否碰到下图这种情况:

    乍一看这个柱状图画的有馍有洋的,but,仔细一看你会发现,横坐标标签如果再长一点就不好看啦,甚至会重叠,就像这样:

    这样的图怎么能入reviewer老师们的法眼呢,分分钟给你个REJECT!!!!要想论文能通过,还是得从细节入手的啦!

    SO,我们想办法让横坐标标签旋转一下不就好啦?下面看代码:

    clc;clear;
    y=[0.5,0.79,0.45,0.35,0.27,0.31,0.64,0.19,0.54,0.87];
    bar(y);
    set(gca,'xticklabel',{'aaaa','bbbb','cccc','dddd','eeee','ffff','gggg','hhhh','iiii','jjjj'})
    
    xtb = get(gca,'XTickLabel');% 获取横坐标轴标签句柄
    
    xt = get(gca,'XTick');% 获取横坐标轴刻度句柄
    
    yt = get(gca,'YTick'); % 获取纵坐标轴刻度句柄          
    
    xtextp=xt;%每个标签放置位置的横坐标,这个自然应该和原来的一样了。                     
    
    ytextp=-0.3*yt(2)*ones(1,length(xt)); 
    % ytextp=xt; 
    
    % 设置显示标签的位置,写法不唯一,这里其实是在为每个标签找放置位置的纵坐标
    
    % rotation,正的旋转角度代表逆时针旋转,旋转轴可以由HorizontalAlignment属性来设定,
    
    % 有3个属性值:left,right,center,这里可以改这三个值,以及rotation后的角度,这里写的是45
    
    % 不同的角度对应不同的旋转位置了,依自己的需求而定了。
    
    text(xtextp,ytextp,xtb,'HorizontalAlignment','right','rotation',45,'fontsize',10); 
    
    set(gca,'xticklabel','');% 将原有的标签隐去
    

      效果图:

  • 相关阅读:
    执行truncate引发ORA-02266的问题分析
    一文搞懂MySQL-8.0 redo优化
    写给迷茫中的大一大二的学弟学妹,学渣逆袭中的个人经历与心得
    99+好友共同关注,公众号推荐
    Cesium
    Cesium
    Cesium
    Cesium
    虚拟化学习笔记-KVM虚拟化跨机迁移原理
    虚拟化学习笔记-KVM虚拟化跨机迁移原理
  • 原文地址:https://www.cnblogs.com/Qsir/p/8686966.html
Copyright © 2011-2022 走看看