首页 > 解决方案 > PyCharm 中的 PyMC3 plots.traceplot

问题描述

我需要做些什么才能 plots.traceplot在 PyCharm 中显示我的 PyMC3 结果吗?我刚刚发现我需要一个print()声明pm.summary()。所以我想知道这些情节是否还有另一个功能。谢谢你!

标签: pycharmpymc3arviz

解决方案


PyMC3 使用ArviZ进行绘图(以及统计和摘要,例如summary),同时依赖于 Bokeh 的 matplotlib。为了能够调用多个绘图命令并自定义图形,两个库都需要在最后调用一个命令来完成图形创建并显示生成的绘图。在 matplotlib 的情况下,它是matplotlib.pyplot.show(),在 Bokeh 的情况下,它是bokeh.plotting.show(plot).

当以交互方式使用 ArviZ 时(因此几乎不自定义 ArviZ 生成的图),可以将 ArviZ 配置为通过执行以下操作自动显示所有生成的图:

import arviz as az
az.rcParams["plot.matplotlib.show"] = True  # bokeh plots are automatically shown by default

这将pm.traceplot立即自动显示情节。如果这是一个过于笼统的设置,还可以选择pm.traceplot(..., show=True)按地块使用。


推荐阅读