matlab xticklabel 旋转,在Matlab中,如何实现xticklabel的旋转?转
在Matlab中,如何实现xticklabel的旋转?转
2018-09-18
2009-05-01 18:05
[原创]在Matlab中,如何实现xticklabel的旋转?
在撰写科技论文时,不可避免的要使用图片显示试验结果。excel固然可以用来画图,但是excel画出来的图片不够精美,漂亮。Matlab是一个很强大的工具(我对其他功能知之甚少),可以画出很精美的图片,并且可以直接存储为.eps格式,方便在LaTex中调用。
我在使用Matlab是遇到了一个问题,就是由于xticklabel的字符串过长,导致多个ticklabel重叠。
首先,为初学者解释一下什么是ticklabel?什么是label?
一般情况下,label是可以通过属性设置其旋转的,但是,这并不是我们要旋转的东西,我们想旋转的是ticklabel,而ticklabel在axis属性对话框中通过设置style只能设置FontSize和FontWeight等属性,并不能旋转。
我通过一个函数实现ticklabel的旋转
function th=rotateticklabel(h,rot,demo)
%ROTATETICKLABEL rotates tick labels
% TH=ROTATETICKLABEL(H,ROT) ris the calling form where H is a handle to
% the axis that contains the XTickLabels that are to be rotated. ROT is
% an optional parameter that specifies the angle of rotation. The default
% angle is 90. TH is a handle to the text objects created. For long
% strings such as those produced by datetick, you may have to adjust the
% position of the axes so the labels don"t get cut off.
%
% Of course, GCA can be substituted for H if desired.
%
% TH=ROTATETICKLABEL([],[],"demo") shows a demo figure.
%
% Known deficiencies: if tick labels are raised to a power, the power
% will be lost after rotation.
%
% See also datetick.
% Written Oct 14, 2005 by Andy Bliss
% Copyright 2005 by Andy Bliss
%DEMO:
if nargin==3
x=[now-.7 now-.3 now];
y=[20 35 15];
figure
plot(x,y,".-")
datetick("x",0,"keepticks")
h=gca;
set(h,"position",[0.13 0.35 0.775 0.55])
rot=90;
end
%set the default rotation if user doesn"t specify
if nargin==1
rot=90;
end
%make sure the rotation is in the range 0:360(brute force method)
% while rot>360
% rot=rot-360;
% end
% while rot<0
% rot=rot+360;
% end
%get current tick labels
a=get(h,"XTickLabel");
%erase current tick labels from figure
set(h,"XTickLabel",[]);
%get tick label positions
b=get(h,"XTick");
c=get(h,"YTick");
%make new tick labels
if rot<180
th=text(b,repmat(c(1)-.1*(c(2)-c(1)),length(b),1),a,"HorizontalAlignment","right","fontsize",14,"fontweight","bold","rotation",rot);
else
th=text(b,repmat(c(1)-.1*(c(2)-c(1)),length(b),1),a,"HorizontalAlignment","left","fontsize",14,"fontweight","bold","rotation",rot);
end
如何使用这个函数呢?
x = round(rand(5,3)*10);
h=bar(x,1,"group");
set(gca,"xticklabels",{"benchmark1","benchmark2","benchmark3","benchmark4","benchmark5"});
h = gca;
th=rotateticklabel(h, 45);
效果
<
免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。
http://www.pinlue.com/style/images/nopic.gif
matlab xticklabel 旋转,在Matlab中,如何实现xticklabel的旋转?转相关推荐
- matlab三维 旋转矩阵,matlab中的三维坐标系与旋转
1. matlab中的三维坐标系 matlab中的三维坐标系是使用的右手坐标系: 输入以下代码: >> plot3(0,0,0) >> xlabel('axis X') > ...
- matlab中如何转动三维图_matlab中的三维坐标系与旋转
1. matlab中的三维坐标系 matlab中的三维坐标系是使用的右手坐标系: 输入以下代码: >> plot3(0,0,0) >> xlabel('axis X') > ...
- matlab因子载荷矩阵正交旋转,因素分析中的矩阵旋转
因素分析中的矩阵旋转 因素分析法 因素分析是一种统计技术,目的是从众多的可观测的"变量"中,概括和推论少数"因素".用最少数的"因素"来概括 ...
- 如何用matlab画旋转面,基于MATLAB在旋转面及其方程教学中应用的教学设计
汝强 [摘 要]在空间解析几何教学中,MATLAB不仅能将复杂的空间曲面方程精准.直观地用三维图形表现出来,还能以动画的形式将空间复杂曲面任意旋转,使学生能直观地.全方位地观察.理解空间曲面方程所表示 ...
- matlab abc dq,关于matlab及pscad中abc2dq模块的使用.doc
关于matlab及pscad中abc2dq模块的使用.doc 关于matlab 及pscad 中abc2dq 模块的使用 Abc2dq 是电气控制系统中经常需要使用的模块,一般书本中对其的定义如下: ...
- matlab yticklable,Matlab绘制XTickLabel有效字符串(Matlab Plot XTickLabel valid strings)
Matlab绘制XTickLabel有效字符串(Matlab Plot XTickLabel valid strings) 我有一个情节: x = [0 1 2 3]; y = [0 0 1 1]; ...
- matlab程序模拟汽车理论中的数据特性图动力特性图,matlab程序模拟汽车理论中的数据特性图1.doc...
matlab程序模拟汽车理论中的数据特性图1.doc 车辆理论作业第三组第一大题确定一辆轻型货车的动力性能1.绘制发动机的使用外特性曲线N60014000NN/1000T1931329527N/100 ...
- 磁镜现象matlab,MATLAB仿真带电粒子在磁场中磁镜现象
[摘要]借助MATLAB数学工具软件,使用数值计算的方法计算带电粒子磁场中的运动方程,对非均匀磁场的磁镜现象进行仿真,使人们对带电粒子在磁场磁镜现象有个更直观的了解. [关键词]MATLAB:带电粒子 ...
- matlab三维 旋转矩阵,matlab旋转矩阵来旋转三维模型+meshlab旋转模型+matlab基础常用...
matlab旋转矩阵来旋转三维模型+meshlab旋转模型+matlab基础常用 matlab旋转矩阵来旋转三维模型+meshlab旋转模型+matlab基础常用操作 matlab旋转矩阵实战: ①点 ...
- matlab将图像用傅里叶旋转,用matlab实现数字图像处理几个简单例子.doc
用matlab实现数字图像处理几个简单例子.doc 实验报告实验一 图像的傅里叶变换(旋转性质)实验二 图像的代数运算实验三 filter2 实现均值滤波实验四 图像的缩放朱锦璐04085122实验一 ...
最新文章
- Jmeter中文乱码问题
- jdk 5 到 jdk 10各个版本的新特性
- ipython和python怎么用_如何使用IPython重新加载和自动加载?
- 送书 | 222Beta多样性限制性排序CPCoA/CCA/RDA/LDA
- 学习API 判断光驱是否为光盘
- 计算机二级新考纲什么时候出来,有计算机二级考试(VFP)的新考纲吗?
- $.ajax()在IE9下的兼容性问题
- 利用分类模型学习特征权重
- 关于连接参数-Ttext
- 公钥加密_河海大学陆阳、李继国:不依赖双线性对的带关键字搜索的无证书公钥加密方案构造...
- 如果软件测试是门艺术,软件测试工程师就是艺术家 -- 浅析ZStack是如何做智能软件测试
- 娃哈哈的新品,为什么打动不了年轻人?
- H5网站接入Paypal支付接口
- 给一个不多于5位的正整数,要求: ①求出它是几位数②分别输出每一位数③按逆序输出各位数字,例如原数为123,应输出321
- 随机,摇号、彩票,生成随机数或是随机字符串(万能的evaluate) 。如何找到随机中的规律
- android 获取亮度,如何读取Android屏幕亮度/暗淡的实时,当前值?
- 从零开始的命令行CLI
- 2020互联网大厂的薪资职级一览
- GDAL开发(一)cs2cs
- 如何黑入安卓手机(ezsploit)