公告:本站正式转型为非交互式静态网站!
转型:本站将通过笔记和博客的形式继续为大家服务,关于 Mathematica 问答服务请移步至QQ群:365716997
联系:如有问题请联系QQ群管理员,或发送邮件至:lixuan.xyz@qq.com。
感谢:最后非常感谢大家多年来的支持与帮助!
参考《互联网跟帖评论服务管理规定》《中华人民共和国网络安全法》《网络信息内容生态治理规定》《互联网用户账号信息管理规定》

—— 2022-11-27

欢迎来到 Mathematica 问答社区

提问时请贴上文本代码

语法高亮:在编辑器中点击

被禁止的话题:广告破解

请阅读:《提问的智慧》

备用域名:mma.ooo

支持LaTex数学公式
行内公式标识符:\$ 或“$\backslash ($”+“$\backslash )$”,
行间公式标识符:\$\$ 或 “$\backslash [$”+“$\backslash ]$”

社区建议QQ群:365716997

分类

0 投票
2.6k 浏览
Remove["Global`*"] // Quiet;
data = {{0, 0, 0}};
Manipulate[
 ListPointPlot3D[AppendTo[{{0, 0, 0}}, {x + y, x, y/2}]], {x, 0, 
  10}, {y, 0, 5}]
Manipulate[
 ListPointPlot3D[AppendTo[data, {x + y, x, y/2}]], {x, 0, 10}, {y, 0, 
  5}]

对上面这段代码我有三个问题:

1)为什么第一个Manipulate画不出图来?

第一个Manipulate画不出图

2)总是遇到一个困扰: 含有Manipulate的notebook打开后,总是一堆乱七八糟的提示,重新运行就好了。从提示看是由于变量的作用范围问题,可问题是我不想把所有的变量写到Manipulate内。

打开后是乱码,运行一次后就有正常了

3)我用的是11.2,运行Manipulate后,总是显示一致在运行(注意看右侧那条提示正在运行的粗黑线)。但是拖动上面的按钮图形也在变化,是正常的。

shift+回车后,一直显示在运行,但拖动上面的按钮一切是正常的

分类:绘图 | 用户: pfg (506 分)

1个回答

0 投票
 
已采纳

1. 查一下函数 AppendTo 的帮助,其第一个参数只能是变量,不可以是不变量,区别与函数 Append

2. 问题还在 AppendTo,可以把必要的变量写在 Initialization 中声明,比如这样:

Manipulate[
 ListPointPlot3D[AppendTo[data, {x + y, x, y/2}]], {x, 0, 10}, {y, 0, 
  5}, Initialization :> (data = {{0, 0, 0}})]

3. 你知道在 Manipulate 中写 AppendTo ,里面的变量 data 会变成多么庞大么,只要你不终止它,AppendTo 会一直向 data 中添加数据,直到内存撑爆为止.

用户: 野鹤 (5.1k 分)
采纳于 用户:pfg
Manipulate[
 ListPointPlot3D[AppendTo[data, {x + y, x, y/2}]], {x, 0, 10}, {y, 0,
  5}, Initialization :> (data = {{0, 0, 0}})]
这段代码MMA一直在运行,且拖动三维动画框很卡。
...