这个问题与here发布的问题有关,其中我概述了我在模拟过程中在MATLAB中快速可视化3D散点图数据时遇到的问题。 (那里也提供了示例代码和数据。)
作为在MATLAB中设置3D散点图的XData
,YData
,ZData
,SizeData
和CData
属性的替代方法,我&# 39;我想知道是否可以将所有相应的源动态linked到绘制了3D散点的点。链接的值将排队到缓冲区并定期绘制(例如,每0.5秒)。根据我的理解,源代码会在后台刷新,因此包含链接数据的图表不会减慢模拟速度。根据我在文档中看到的内容,仅指定了XDataSource
,YDataSource
和ZDataSource
。是否也可以动态链接大小和颜色数据源,如果没有,是否有一个简单的解决方法?
提醒一下,我在Windows 7上使用MATLAB R2016a。
答案 0 :(得分:0)
是否也可以动态链接大小和颜色数据源,如果没有,是否有一个简单的解决方法?
是的,可以使用类似命名的属性
SizeDataSource
CDataSource
这些属性设置为要更新的链接变量的字符串名称。然后,通过链接,对这些命名变量的后续更新将在1/2秒左右(最快)反映在您的绘图中。
但是,这里有一个很大的警告,你的具体例子。
创建图形句柄时,xxxxSource
字段通常在开始时初始化。这将是您最初的scatter3
来电。
问题在于您有八个单独的散点图句柄,每个句柄引用相同的变量,但具有不同的索引。也就是说,您正在将索引更新为这些变量以生成图像。
在这里使用参数链接的强力方法是创建八个不同的变量名称,并将每个变量名称链接到相应的散点图句柄。
我认为更清晰的解决方案是使用计时器回调来按设定的时间间隔更新内容。