RuntimeError: functools.partial(<bound method FigureCanvasAgg.print_png of <matplotlib.backends.backend_agg.FigureCanvasAgg object at 0x000001E4BA924550>>, orientation='portrait') did not call Figure.draw, so no renderer is available <Figure size 1920x10
时间: 2024-02-06 13:09:19 浏览: 167
Python RuntimeError: thread.__init__() not called解决方法
这个错误通常是因为在调用 `savefig` 方法时没有先调用 `draw` 方法。你需要在调用 `savefig` 之前先调用 `draw` 方法来确保生成渲染器。以下是一个简单的示例:
```python
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.plot([1, 2, 3], [4, 5, 6])
fig.canvas.draw() # 调用 draw 方法生成渲染器
fig.savefig('output.png')
```
在这个示例中,我们首先创建了一个图形对象 `fig` 和一个坐标轴对象 `ax`。然后,我们在坐标轴上绘制了一条线。接下来,我们调用了 `draw` 方法来生成渲染器,并最终调用 `savefig` 方法将图形保存为 PNG 文件。
阅读全文