Can we list all possible values for a property of a MATLAB object without going via help/doc ?

13 ビュー (過去 30 日間)
To be clear, I will be specific, but the question is for the general case (the more general, the better)
Consider that you have a graphics object, say axes with handle axH. You wish to set the 'NextPlot' property of that object to something else than the default value, but you cannot recall the possible notation to do so... Hence, you must open the documentation to find the acceptable values. In a perfect MATLAB world, it would be better to be able to do something similar to 'get', for example:
>> axH = axes();
>> getPossibleValues(axH.NextPlot)
ans =
'replace'
'add'
'replaceall'
'replacechildren'

採用された回答

Walter Roberson
Walter Roberson 2017 年 1 月 8 日
Not in any simple form, no. For graphics objects and for a number of other different kinds of objects, there is a method:
axH = axes();
set(axH,'NextPlot')
4×1 cell array
'add'
'replace'
'replacechildren'
'replaceall'
and when you do not know the property name:
set(axH)
ALim: {}
ALimMode: {'auto' 'manual'}
ActivePositionProperty: {'position' 'outerposition'}
AmbientLightColor: {1×0 cell}
Box: {'on' 'off'}
BoxStyle: {'full' 'back'}
[...]
This only displays non-hidden properties, and only works for objects that use the get/set interface. It does not, for example, work for Java objects.
  2 件のコメント
Ronny Landsverk
Ronny Landsverk 2017 年 1 月 8 日
編集済み: Ronny Landsverk 2017 年 1 月 8 日
@Walter: Thanks for rapid response. It is surprising to me that 'set' with no property value will return those
Image Analyst
Image Analyst 2017 年 1 月 8 日
Some properties do not have a discrete set of potential values, for example the xlim() property of an axes. The value could be virtually anything (excep +/- infinity).

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeGraphics Object Properties についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by