Pet*_*euz 6 python macos matplotlib pycharm python-interactive
首先,我正在 Pycharm 调试控制台上工作,并想在我的图表下放置一个标题。根据这个答案,这可以通过以下方式实现:
plt.plot([2,5,1,2]
fig = plt.figure()
fig.text(.5, .05, "text", ha="center")
plt.show()
Run Code Online (Sandbox Code Playgroud)
但是,这首先向我展示了情节,然后是一个空窗口(在键入第二行之后),之后什么也没有。
我发现这一定是因为 matplotlib 的交互模式,所以我plt.ioff()在调试会话中关闭它,然后plt.isinteractive()返回False. 尽管如此,这并没有改变它的行为,并在plt.plot(...)命令之后立即显示情节。
奇怪的是,当我放入plt.ioff()脚本时,它被忽略并plt.isinteractive()返回True.
import matplotlib.pyplot as plt
plt.ioff()
plt.plot([1,2,3,4,5])
print(plt.isinteractive())
Run Code Online (Sandbox Code Playgroud)
我的系统信息:
任何人都可以重现这个吗?还有另一种方法可以从 Pycharm 调试控制台创建更复杂的图表吗?每次我想绘制更复杂的东西时,我都不想改变我的开发环境。
回答您的问题:使用不同的(非交互式)后端:
import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt
Run Code Online (Sandbox Code Playgroud)
您的代码可能无法正常工作,因为您在绘图后创建了图形实例。尝试:
fig = plt.figure()
plt.plot([2,5,1,2]
fig.text(.5, .05, "text", ha="center")
plt.show()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6571 次 |
| 最近记录: |