fontunits(fontunits翻译)
gca在matlab中的意思是什么?
gcf
返回当前figure对象的句柄值
gca返回当前axes对象的句柄值
gco返回当前鼠标单击的句柄值,该对象可以是除root对象外的
任意图形对象,并且matlab会把当前图形对象的句柄值存放在figure的currentobject属性中
axes对象的属性
(1)title('new','color','r');给坐标轴命名为new,红色
title({'this
title','has
2
'});命名为两行的标题
(2)units:有效值为pixels/normalized/inches
/centimeters/points/characters
决定各种位置属性的度量单位,相对于窗口左下角为基准。当设置为pixels时,
以像素为单位;当设置为normalized时,以坐标为单位,屏幕的左下角为[0,0],右上角为[1.0,1.0]。
(3)grid
on:在图像中显示网格。
(4)children:控制axes对象的子对象,即image\light\line\patch
\rectangle\surface和text等对象,可通过get(gca,'children')来返回当前坐标轴的子对象构成的句柄值向量。
(5)
字体属性:
fontangle字体角度(正常normal或斜体italic/oblique)
fontname字体名称
fontsize
字体大小(单位由fontunits决定)
fontunits字体单位(points/normalized/inches
/centimeters/pixels)
fontweight字体粗细(normal/bold/light/demi)
gridlinestyle
决定坐标轴网格线的样式,‘-’为实线‘-
-’为虚线‘:’为点线‘-.’为点虚线
plot(1:10);grid
on;set(gca,'gridlinestyle','-.');将当前坐标轴显示的网格线为点-虚线
(6)linewidth
定义x,y和z轴的轴线宽度(以点单位定义)
(7)nextplot:有效值为add|replace|replacechildren,默认为
replace
add表示使用当前的坐标轴,把新的图形对象加到此坐标轴中是一般保留的做法,replace表示重新设置坐标轴的所有属性
(position除外),也就是在绘图前会删除当前坐标轴和它的子对象。replacechildren表示移除当前坐标轴中所有子对象,但不重新设置
坐标轴的所有属性
(8)outerposition决定坐标轴外边界的位置。由位置向量[left,bottom,width,height]组
成,其中left,bottom表示相对于绘图窗口左下角的位置,width,height表示区域尺寸,默认为[0
1
1]
(9)position
由位置向量[left,bottom,width,height]组成,决定坐标轴位置
(10)tag定义本坐标轴的卷展栏,因为每一个对象都有
自己唯一的识别码即tag,以方便findobj函数查找坐标轴句柄值。
(11)visible决定坐标轴是否可见
(12)set(gca,'xgrid','on')
绘制x轴垂直网格线
set(gca,'gridlinestyle',':','linewidth',3)设置网格线线条类型和宽度
set(gca,'box','on')
将图轴方框绘制出来
(13)set(gca,'xscale','linear');将x轴刻度设为线性
set(gca,'yscale','log');
将y轴刻度设为对数
(14)disp()显示一个数组,但不显示其数组名称
matlab一直提示我定义的数组photo1赋值无用the value assigned to variable 'photo1' might be unused
function huaban
第一个的函数头有问题
可以是 function f=huaban
就好了,我试了。
程序做的好,赞一个!
有没有GUI的教程送我一个903279561@qq.com谢谢。
不改也没错啊! 你原来的程序也对!
一个matlab画板程序,求大神解释
注释我就不写%了哈。
function huaban
定义函数
figure
产生一个空白图
backcolor=get(gcf,'Color');
得到当前空白图的句柄,并存在backcolor中
uicontrol(gcf,'style','text','units','normalized','pos',[0.22 0.9 0.56 0.08],...
'string','Matlab小画板','fontsize',14,'fontweight','bold',...
'fontunits','normalized','Hor','center','ForegroundColor',[0,0,0],...
'bac',backcolor)
这个是uicontrol的语句,对这个图形界面的‘style’,‘units’,‘position’等进行一系列的设置
uicontrol(gcf,'style','push','units','normalized','pos',[0.8 0.02 0.127 0.08],'string','清 除',...
'fontsize',12,'fontweight','bold','fontunits','normalized','callback','cla;')
同上
axes('Position',[0.12 0.18 0.8 0.7],'Box','on','ButtonDownFcn',{@mouse_xiezh 'start'})
对坐标轴进行设置
如果你在学GUI就要了解这个,不学GUI不用知道uicontrol怎么用。
%%-------------------------------------------------------------------------
%子函数
%%-------------------------------------------------------------------------
function mouse_xiezh(hObject, eventdata, action)
switch action
switch语句你懂得啦,不懂看一本matlab的基础教程就懂了
case 'start'
point=get(gca,'CurrentPoint');
同样是得到句柄
line(point(1,1),point(1,2),'clipping','on','erasemode','background','marker','.');
用line函数画图
set(gcbf,'WindowButtonMotionFcn',{@mouse_xiezh 'move'});
进行参数设置
set(gcbf,'WindowButtonUpFcn',{@mouse_xiezh 'stop'});
case 'move'
point=get(gca,'CurrentPoint');
line(point(1,1),point(1,2),'clipping','on','erasemode','background','marker','.');
case 'stop'
set(gcbf,'WindowButtonMotionFcn','');
set(gcbf,'WindowButtonUpFcn','');
end
这些都一样啦。你了解一下set,switch,line,get函数的用法就可以了。
matlab的text的fontunits属性?
不会。将fontunits属性更改成normalized后,字体的大小还是固定的,只是把字体大小单位改为图形高度的几分之几了,还是个固定的数。