F5 运行整个程序 F9 运行选中的部分程序
xtick是刻度(小竖线);xticklabel 刻度值(竖线下面的数值)
1、画图,坐标轴上的刻度线如何画在外面?
解决:set(gca,'tickdir','out')
2、Matlab如何调整坐标轴刻度间隔?
set(gca,'XTick',0:pi/2:2*pi);设置刻度
set(gca,'YTick',-1:1:1);
set(gca,'XTicklabel',{'0','π/2','π','3π/2','2π'});设置刻度下的标签
axis([0 pi*2 -1 1]);设置图像的显示范围
来自百度百科:https://jingyan.baidu.com/album/4853e1e541a2541909f726a9.html?picindex=3
3、调整刻度值得字体大小
set(gca,'FontSize',15);
4、调整坐标轴标签的字体类型和大小
YTick('X/m', 'FontSize',15,'color','k','Fontname','Times New Roman','FontAngle','italic','FontWeight','bold'); %斜体,加粗
5、如何去除Matlab图形中的边界
有时候需要将Matlab画的图插到文章中,但是Matlab在保存图形的时候,会把整个figure对象全部保存,这样axes之外会有很大的空白。如何只保留axes和必要的说明文本?(例如坐标数值,title等)
Matlab figure说明
在Matlab中,我们可以分三个层次来访问Matlab的图形:figure层,axes层,object层。对应figure 1的原始图形,figure层是灰色区域以及灰色区域包含的地方,原图中白色底的部分为axes层,白色区域中的线条是object层。这三层都可以使用handle这种东西来访问和操作。每种层次的handle有不同的属性可以设置(set)或者读取(get)。一旦set成功,原图就会发生相应的改变。这里我们的目的是为了让他去掉过多的外围空白区域,可以使用axes的position属性来设置axes的位置,通过使用figure的handel设置其颜色属性来把底色设置成白色。
代码:x = 0:0.01:2*pi; y = sin(x); plot(x,y,'k');
做如下处理:将图形背景设置为白色,将图形区域铺满整个figure区域。
设置figure背景为白色
执行如下命令来设置figure的背景为白色。执行之后获得下图所示的图。
set(gcf, 'color', [1 1 1]);
去除figure中外围空白区域
使用axes handle的TightInset属性来获得axes区域需要扩展的最大范围,然后在根据这个来设置axes在figure中的position属性。先执行下面的代码。执行上述代码后,会得到如下的图
margin = get(gca, 'TightInset');
set(gca, 'Position', [0+margin(1) 0+margin(2) 1-margin(1)-margin(3) 1-margin(2)-margin(4)]);
保存上图中的图像即可获得一个没有过多边界空白的图像了。
关于Position属性。他有四个值分别指示axes区域,[left bottom width height],其中他们的是属于[0,1]的。
关于TightInset属性,他是只读的,标示axes区域在四个方向上为了能包含进必要的文字而向外延伸的最小拓展,取值也在0和1之间。实际上,上述命令中设置的axes就是TightInset的区域大小。
from:https://blog.csdn.net/fallian/article/details/38780797
5、图形框的邮编和上边出现刻度,如何去除?
可通过如下语句将其去掉:
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
实例:
%画图研究
x = 0:0.01:2*pi;
y = sin(x);
plot(x,y,'k');
%去除figure中外围空白区域,保存图像时无空白区域
set(gcf, 'color', [1 1 1]);
margin = get(gca, 'TightInset');
%去除右侧,上侧的刻度线,但保留边框
set(gca,'box','off','Ytick',[])
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
%去除右侧,上侧的刻度线,连同边框一同去除
set(gca, 'Position', [0+margin(1) 0+margin(2) 1-margin(1)-margin(3) 1-margin(2)-margin(4)]);
6、设置坐标轴显示长度
xlim([0 10]);从0到10显示
7、为线加标签
x = -pi:pi/20:pi;
plot(x,cos(x),'-ro',x,sin(x),'-.b')
hleg1 = legend('cos_x','sin_x');%按顺序对应
8、 线型、标记、颜色
线型代号 | 表示线型 |
---|---|
- | 实线 |
– | 虚线 |
-. | 点画线 |
: | 点线 |
标记代号 | 表示标记 | 标记代号 | 表示标记 |
---|---|---|---|
. | 点 | o | o |
* | 星号 | + | + |
square | 正方形 | x | ×× |
diamond | 菱形 | < | 顶点指向左边的三角形 |
pentagram | 五角星形 | > | 顶点指向右边的三角形 |
hexagram | 六角星形 | ^ | 正三角形 |
none | 无点 | v | 倒三角形 |
颜色代号 | 表示颜色 |
---|---|
g | 绿色 |
m | 品红色 |
b | 蓝色 |
c | 灰色 |
w | 白色 |
r | 红色 |
k | 黑色 |
y | 黄色 |
例:t=0:0.1:2*pi;
y1=sin(t);
y2=cos(t);
y3=sin(t).*cos(t);
plot(t,y1, '-r',t,y2, ':g',t,y3, '*b')