【发布时间】:2010-12-01 07:55:26
【问题描述】:
背景:
我正在运行蒙特卡洛模拟,以表明特定过程(累积平均值)确实不随着时间的推移收敛,并且在模拟中经常发散很大(随机变量的期望 = 无穷大)。我想在折线图上绘制大约 10 个这样的模拟,其中 x 轴具有迭代次数,y 轴具有直到该点的累积平均值。
这是我的问题:
我将运行第一个模拟(每个模拟有 10,000 次迭代),并根据其当前范围构建主图。但通常其中一个模拟的范围比第一个大几个数量级,因此情节超出了原始范围。那么,有没有办法在添加一组新的点或线时动态更新绘图的 ylim 或 xlim?
我可以为此想到两个解决方法:1. 存储每个模拟,然后选择具有最大范围的一个,并以此构建基础图(不优雅,我会必须在内存中存储大量数据,但可能对笔记本电脑友好更多的迭代使得它成为一个问题(想想需要更多、更大的 MC 样本来收敛的高维游走,然后直接跳进去]]) 2. 找到一个看起来可以构建一个漂亮版本的种子它,并手动设置 ylim,这将使演示可重现。
我自然会坚持一些比我的解决方法更优雅的东西。希望这不是太普通的问题,因为我想这在 R 中的模拟中并不少见。有什么想法吗?
【问题讨论】:
-
我只是想知道:你有任何记忆问题吗? 10.000 的 10 个向量并不多。当我检查时: X
-
不,好点子 - 我绝对不会在这个模拟中遇到内存问题(因此对笔记本电脑友好),但我将演示更复杂的 [Q]MC[MC] 模拟未来,具有相同的图形输出。我正在寻找通常不会依赖太多存储的东西,尤其是当事情变得更加复杂并且我需要更大的 MC 样本大小来确保收敛时。这可能是不可避免的/我可能高估了实现上述未来模拟的难度。