Dex*_*ers 3 matlab command resize scatter-plot
我有一个图形文件(scatter.fig).该图有许多使用scatter()的散点图绘制器.现在我只有这个图文件,我需要增加所有散点的标记大小.尝试手动,但非常困难.有没有办法可以做H = figurehandle()s = points(h)set(s,'markersize');
我只是无法弄清楚确切的命令.
谢谢.
您需要获取散射组对象的句柄以更改标记属性.正如Jonas在评论中提出的那样,你可以轻松搞定
% get handle to scattergroup object
h = gco;
Run Code Online (Sandbox Code Playgroud)
由于散点图组是轴的子节点,因此您也可以获取它
% get handle to scattergroup object
h = get(gca,'children');
Run Code Online (Sandbox Code Playgroud)
如果图像包含多个图形对象(例如,附加行),则该命令findall可能有帮助(同样是Jonas的建议).使用此命令,您可以搜索具有特定属性的图形对象的句柄:
h = findall(gca,'marker','o')
Run Code Online (Sandbox Code Playgroud)
当您拥有散子组的句柄时,可以更改标记的属性
% change size of markers
set(h, 'sizedata', 50)
Run Code Online (Sandbox Code Playgroud)
要查看可以更改的散点组属性的完整列表,请使用
get(h)
Run Code Online (Sandbox Code Playgroud)
或者用于显示属性使用的GUI
inspect(h)
Run Code Online (Sandbox Code Playgroud)
如果您只想编辑单个绘图(即不需要编写脚本),可以通过单击工具栏上的鼠标按钮然后单击绘图中的一个标记(Jonas再次建议)来编辑实际图形.然后右键单击标记,选择"属性",然后按"更多属性"按钮.在打开的UI中,将条目"sizeData"更改为您选择的值.