我想逐步訪問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