首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >控制台中未显示Getdist图

控制台中未显示Getdist图
EN

Stack Overflow用户
提问于 2019-03-07 18:42:22
回答 1查看 232关注 0票数 2

我正在使用getdist绘制一些模拟结果。在jupyter中只写这一行

代码语言:javascript
复制
g = plots.getSubplotPlotter()
g.triangle_plot([samples, samples2], filled=True)

Python将显示图,因为我们可以看到here

现在,如果我们想用Python shell编写它,并用IDLE运行它,这不会产生任何绘图。plt.show()在这里不起作用。

如何指示python或matplotlib显示绘图并保存?

EN

回答 1

Stack Overflow用户

发布于 2019-03-07 19:13:35

问题是getdist将后台设置为Agg (在this line中),这是一个非交互式后台,因此无法通过plt.show()生成交互式图形。

这是非常糟糕的风格,因为用户应该选择后端,而不是包。您可能希望将此设计缺陷告知开发人员。

无论如何,在导入getdist之后,通过plt.switch_backend(..)切换后端是可能的。作为后端,你需要使用任何可用的交互式后端,例如"Qt5Agg""TkAgg"

代码语言:javascript
复制
import numpy as np
from getdist import plots, MCSamples
import matplotlib.pyplot as plt

plt.switch_backend("Qt5Agg")

# .. some code ..

g = plots.getSubplotPlotter()
g.triangle_plot([samples, samples2], filled=True)

plt.show()
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55041822

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档