Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wolfram mathematica Mathematica:为什么3D绘图即使在再次评估后仍能记住对其进行的最后一次视点/旋转?_Wolfram Mathematica - Fatal编程技术网

Wolfram mathematica Mathematica:为什么3D绘图即使在再次评估后仍能记住对其进行的最后一次视点/旋转?

Wolfram mathematica Mathematica:为什么3D绘图即使在再次评估后仍能记住对其进行的最后一次视点/旋转?,wolfram-mathematica,Wolfram Mathematica,我觉得这有点烦人 我做了一个3D绘图,最初它以默认方向出现。然后,用鼠标,我把它旋转了一圈 现在,我再次运行该命令,希望获得原始形状(即,在我用鼠标旋转它之前的原始方向),但相反,它只给了我屏幕上的相同绘图,即,它似乎保留/记住了该输出单元格中的最后一个视点 我想让它回到原来的观点。因此,我删除了输出单元格以实现它 你认为这就是它的工作原理吗?当我尝试这件事时,不得不不断删除单元格输出是很烦人的。我认为它应该回到原来的默认方向 Graphics3D[ Cuboid[{-.1,-.1,-.1}

我觉得这有点烦人

我做了一个3D绘图,最初它以默认方向出现。然后,用鼠标,我把它旋转了一圈

现在,我再次运行该命令,希望获得原始形状(即,在我用鼠标旋转它之前的原始方向),但相反,它只给了我屏幕上的相同绘图,即,它似乎保留/记住了该输出单元格中的最后一个视点

我想让它回到原来的观点。因此,我删除了输出单元格以实现它

你认为这就是它的工作原理吗?当我尝试这件事时,不得不不断删除单元格输出是很烦人的。我认为它应该回到原来的默认方向

  Graphics3D[ Cuboid[{-.1,-.1,-.1},{.1,.1,.1}],
        AxesOrigin->{0,0,0},
        PlotRange->{{-1,1},{-1,1},{-1,1}},
        Axes->True,
        AxesLabel->{"X","Y","Z"},
        Ticks->None]
如果您运行上述命令,然后移动绘图,然后再次运行该命令,您将了解我的意思

版本8.0.01

编辑:

更奇怪的是:我添加了“视点”选项以强制将其设置为默认视点,但结果相同。它记得最后一个观点。以下是“帮助”中的默认视点

 Graphics3D[ Cuboid[{-.1,-.1,-.1},{.1,.1,.1}],
        AxesOrigin->{0,0,0},
        PlotRange->{{-1,1},{-1,1},{-1,1}},
        Axes->True,
        AxesLabel->{"X","Y","Z"},
        ViewPoint->{1.3,-2.4,2},
        Ticks->None]
我觉得这很奇怪。

试试:

With PreserveImageOptions->False, settings for image options from the previous
version of a graphic are always ignored.

在Mathematica笔记本中,渲染绘图,然后按您喜欢的方式确定方向

然后将光标放在绘图输出的左侧,并键入“AbsoluteOptions[” 然后将光标放在绘图输出的右侧,并键入“]”Shift-Enter


你会得到一大堆信息。寻找视点,然后将其用作图形中的选项。然后,您将始终获得相同的方向。

我喜欢将重新运行Plot命令视为更新我已经创建的图形。毕竟,它没有第二个情节

  Graphics3D[ Cuboid[{-.1,-.1,-.1},{.1,.1,.1}],
        AxesOrigin->{0,0,0},
        PlotRange->{{-1,1},{-1,1},{-1,1}},
        Axes->True,
        AxesLabel->{"X","Y","Z"},
        Ticks->None]
从这个角度来看,如果我旋转或调整图形大小,我不希望Mathematica在添加标签或更改样式时弄乱这一点

但是,如果我删除图形重新开始,Mathematica将使用默认的旋转和大小


因此,我觉得这种行为合乎逻辑,值得赞赏。

谢谢,就是这样。但我仍然觉得这是一种奇怪的行为,因为人们期望命令每次发出时都给出相同的输出。Cheers我其实很喜欢这种行为,因为这样我就可以以交互方式将其定向到我想要的方向,并在该视图中改进图形的某些方面,并看到结果的更新。如果每次都要重新定位,那就太麻烦了。@Yoda,是的,但我的意思是选择应该是相反的!我的意思是,默认值应该是preserve is FALSE,如果一个人想做你想做的事情,那么他们应该使用这个选项。i、 逻辑颠倒了。人们期望命令生成相同的输出,并且不受历史记录的影响。除非另有说明。@Nasser如果你花了很多时间试图让情节看起来漂亮,然后失去了所有的工作,你可能会有不同的想法。这样你的作品就不会丢失,除非你特别声明。谢谢!,我以前记得这个把戏,但我忘了,谢谢你提醒我。了解当前视点很有用。