根据文档AbsoluteOptions[expr,name]
“给出选项名称的绝对设置”。
“AbsoluteOptions
给出Mathematica在给定设置为Automatic或All时内部使用的选项的实际设置。”
以下是他们展示的一个例子:
<< AbsoluteOptions[Plot[Sin[x], {x, 0, 2 Pi},
PlotRange -> Automatic], PlotRange]
>> {PlotRange -> {{0., 6.28319}, {-1., 1.}}}
我在这里使用&lt;&lt;表示输入和&gt;&gt;表示输出。
这似乎工作正常。但是,当我尝试获取情节的AspectRatio
时,它只是给我自动。试试这个,
AbsoluteOptions[
ListPlot3D[{{1, 1, 1, 1}, {1, 2, 1, 2}, {1, 1, 3, 1}, {1, 2, 1, 4}},
AspectRatio -> Automatic],
AspectRatio
]
与他们展示的示例类似的格式,但我得到的输出只是
{AspectRatio->Automatic}
这是否意味着参数expr
只能是Graphics
个对象,而不是Graphics3D
?这没有意义,因为如果我尝试获取PlotRange
Graphics3D
对象的{{1}},它就可以正常工作。这是一个错误还是我的mathematica被打破了?另一件事可能是文档不是非常具体。哪一个?
以下是文档的链接:
http://reference.wolfram.com/mathematica/ref/AbsoluteOptions.html
我正在使用Mathematica 7.0.1.0。
答案 0 :(得分:4)
您可以将ImageDimensions
直接应用于Graphics3D
以获取其ImageSize
。
由于 Mathematica 4(见相应documentation page的底部),AbsoluteOptions
似乎没有被修改。这个函数非常错误(例如,PlotRange
生成的2D图形的Show
通常会给出错误的值),有时根据您的问题指出它根本不起作用。将其与FullOptions
和FullGraphics
进行比较,自版本2以来似乎未对其进行修改...有时FullOptions
在AbsoluteOptions
错误或根本不起作用时给出了正确的值
答案 1 :(得分:1)
也许,BoxRatios就是你要找的人。 HTH。