matplotlib 通过“import matplot lib as mpl”和“self.figure = mpl.figure.Figure(dpi=dpi,figsize=(2,2))”创建图形

ohfgkhjo  于 2023-11-22  发布在  其他
关注(0)|答案(2)|浏览(104)

我已经使用这个sintax 'self.figure = mpl.figure.Figure(dpi=dpi,figsize=(2,2))'在以下条件下创建图形:Python - 3.8.6和Matplotlib - 3.4.1,它工作得很好。
现在我必须使用Matplotlib - 3.7.3,在这样做的时候我收到红色消息“AttributeError:module 'matplotlib' has no attribute 'figure'“。但实际上这个sintax存在于这个版本的Matplotlib的文档中。
是否有任何等效或更新的功能集来替代该行?
谢谢你
Sintax在创建数字方面工作得很好,我希望在新的Matplotlib版本中也能工作。

sirbozc5

sirbozc51#

如果你试图从Matplotlib访问 figure(),那么这将失败,因为Matplotlib的 home 目录中不存在这样的函数。你需要转到目录 pyplot 才能从Matplotlib访问figure()。所以,例如:

import matplotlib.pyplot as plt

字符串
然后,您可以:

fig = plt.figure()


记住Matplotlib.pyplot.figure()可以使用mpl_toolkits。
底线是您不能从Matplotlib的主目录访问figure();您需要访问它的一个子目录来访问它。

zf2sa74q

zf2sa74q2#

Figure应该不是问题,但是你需要从matplotlib.figure显式导入它。

>>> import matplotlib as mpl
>>> from matplotlib.figure import Figure
>>> mpl.__version__
'3.8.2'

字符串
你不使用pyplot / plt接口是对的,它是用于交互的,而不是集成到一个应用程序中。
为了与wx集成,你应该使用面向对象的接口。
参见此处的集成示例:

相关问题