首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AttributeError:'AxesSubplot‘对象没有属性'sharex’

AttributeError:'AxesSubplot‘对象没有属性'sharex’
EN

Stack Overflow用户
提问于 2022-04-20 09:25:01
回答 2查看 610关注 0票数 3

我有一些代码在我的本地机器上使用Python3.7很好地工作,但是在远程服务器上使用Python3.7也会失败。奇怪的是,失败的错误是AttributeError: 'AxesSubplot' object has no attribute 'sharex'。然而,AxesSubplot应该有一个sharex作为属性,所以我不知道它从何而来。为了进行调试,下面是在我的远程服务器上不能工作的一段非常短的代码:

代码语言:javascript
复制
import numpy as np ; import matplotlib.pyplot as plt

x=np.arange(50) ; y = x

title='test'
plt.close(title)
fig=plt.figure(title, clear=True)
fig.suptitle(title)
ax1,ax2=fig.subplots(nrows=2)
ax1.sharex(ax2)

你知道问题的根源是什么吗?

EN

回答 2

Stack Overflow用户

发布于 2022-04-21 06:11:08

由于代码在您的一台计算机上正确运行,因此问题似乎不在代码本身。因此,首先想到的是检查已安装的matplotlib库的版本。可能该方法并不存在于所有版本中。

查看Axes类的文档,您可以看到sharex()方法是用3.3版描述的,而不是3.2版中的。因此,其中一台计算机可能正在运行旧版本,升级到3.3.0或更高版本应该可以解决这个问题。

您已经使用了找出,对于低于3.3的版本,也可以使用以下方法来解决:

代码语言:javascript
复制
ax1.get_shared_x_axes().join(ax1,ax2)
票数 1
EN

Stack Overflow用户

发布于 2022-04-20 09:31:08

我认为这个错误来自于这一行:

代码语言:javascript
复制
fig=plt.figure(title, clear=True)

删除clear=True位,然后重试。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71937207

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档