簡體   English   中英

在 jupyter notebook 中顯示來自自定義類的 matplotlib 圖

[英]displaying a matplotlib figure from a custom class in jupyter notebook

我有一個包含matplotlib.figure.Figure對象的包裝類:

class FigureData:
   def __init__(self, figure, metadata=None):
       self.figure = figure
       self.metadata = metadata

   def __repr_svg__(self):
       return self.figure

我想要的是當我在 Jupyter notebook 中時,做

display(figure_data)

將顯示圖形,和做的一樣

display(figure_data.figure)

第二個命令有效,第一個命令無效。 我認為實現__repr_svg__會有所幫助,但我顯然不了解display的基本機制。

結果證明這是兩個錯誤的組合:

  1. __repr_svg__這個名字不對,應該是_repr_svg_
  2. 如果我們想將 Matplotlib 的Figure用作 svg,則應將其轉換為 svg。 _repr_svg_方法應該返回 svg 的str表示。

暫無
暫無

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

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