我想逐步访问lineseries对象的'MarkerFaceColor'属性的'sub-property',名为'allowedStyles'。通过扩展'MarkerFaceColor'属性行,可以在Matlab的检查器(inspect(handle)
)中看到该'子属性'。如何访问Matlab的句柄对象的子属性:'allowedStyles'
我想要做类似下面的事情或者获得相应的命令。 allowedstyles = get(hh,'MarkerFaceColorAllowStyles');
Matlab的检查窗口指示我寻求的信息的屏幕截图。 https://drive.google.com/file/d/0B0n19kODkRpSRmJKbkQxakhBRG8/edit?usp=sharing
更新:
用于访问通过cellstr这个信息的完整性我最终的解决办法是写了下面的函数。感谢Hoki。如果您想为诸如MarkerFaceColor之类的属性提供用户选择,则此信息(允许的样式)对于GUI非常有用,因为您不知道它们正在修改的图形对象的类型。我用这些'allowedStyles'填充一个列表框以及一个设置颜色的选项。网格图'MarkerFaceColor'允许样式{'none','auto','flat'},而系列图有{'none','auto'}。
function out = getAllowedStyles(hh,tag) % hh - handle returned from plot, surf, mesh, patch, etc % tag - the property i.e. 'FaceColor', 'EdgeColor', etc out = []; try aa = java(handle(hh(1))); bb = eval(sprintf('aa.get%s.getAllowedStyles;',tag)); bb = char(bb.toString); bb(1) = []; bb(end) = []; out = strtrim(strsplit(bb,',')); end end
到目前为止你做了什么? – Leistungsabfall 2014-10-02 17:52:57
没有显示你卡在哪里,很难提供帮助。 – 2014-10-02 17:56:43
在Matlab的UI检查窗口中有可用的信息,我想在命令行上进行访问。 – Humberto77 2014-10-02 18:01:55