簡體   English   中英

如何從圖形對象顯示 matplotlib 圖

[英]How to show matplotlib plot from a figure object

我的代碼包含以下幾行:

from matplotlib.figure import Figure

figure = Figure(figsize=(10, 5), dpi=dpi)

我怎樣才能得到 matplotlib 來顯示這個數字? 我還展示了它嵌入在 tkinter 中,效果很好。 但是,我也可以在標准 matplotlib 窗口中顯示它。 但我終其一生都無法讓它發揮作用。

根據嘗試加載腌制 matplotlib 圖形時的 AttributeError ,一個簡單的解決方法是:

fig = plt.Figure(...)
......
managed_fig = plt.figure(...)
canvas_manager = managed_fig.canvas.manager
canvas_manager.canvas.figure = fig
fig.set_canvas(canvas_manager.canvas)

請注意,我在我的環境中遇到了“'Figure' 對象沒有屬性 '_original_dpi'”。 不確定我的 PyPlot 和 PyQt5 之間是否存在兼容性問題。 剛剛做了一個黑客:

fig._original_dpi = 60

解決這個問題。 不知道有沒有更好的解決方案。

我通常使用 matplotlib 的 pyplot 進行即時生成(或在 jupyter notebooks 中生成圖像)。 這將如下所示:

import matplotlib.pyplot as plt

figure = plt.figure(figsize=(10, 5), dpi=dpi)
plt.show()

這顯示了所需的(空白)圖形。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM