• 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','');% 将原有的标签隐去
    

      效果图:

  • 相关阅读:
    几个简单的递归题目
    HDOJ_2222 AC自动机
    展开字符串 字符模拟
    NKOJ_1437 校长杯 赛事安排
    POJ_1979 Red and Black 迷宫类
    看了LINQ Project 的Overview, 我要疯了!
    在PSP上看视频真的爽吗?
    SQL Server用户使用ORACLE应注意的几点:
    一个巨牛的招聘题[转]
    再一次看到DevExpress的控件,我傻了!!
  • 原文地址:https://www.cnblogs.com/Qsir/p/8686966.html
Copyright © 2020-2023  润新知