import matplotlib.pyplot as plt
x_value = range(1, 500)
y_value = [x**3 for x in x_value]
plt.style.use('Solarize_Light2')
fig, ax = plt.subplots()
ax.scatter(x_value, y_value,c = y_value,cmap = plt.cm.Blues, s = 5)
plt.show()
plt.savefig('otp.jpeg', bbox_inchs = 'tight')
程序运行正确。它为该行提供了蓝色,但在问题选项卡中它显示 模块“matplotlib.cm”没有“Blues”成员:可能的解决方案是什么?
“matplotlib.cm”模块中没有名为“Blues”的成员的错误消息尽管你的代码似乎运行正常,这表明你的IDE或linter可能有错误。
以下是你可以尝试的一些解决方法:
- 重新启动你的IDE或内核: 有时候,你的IDE或Python内核可能会遇到故障,这会导致此类错误消息。尝试重新启动你的IDE或内核,看看这是否能解决问题。
-
检查你的matplotlib版本:
plt.cm.Blues
在早期的matplotlib版本中不可用。确保你安装了最新版本的matplotlib。你可以使用以下命令在你的终端或命令提示符中进行检查:bash pip show matplotlib
如果你的版本较旧,请使用以下命令升级:bash pip install --upgrade matplotlib
-
明确导入cm:
尝试通过添加以下导入语句明确导入
cm
模块:python import matplotlib.cm as cm
然后,使用cm.Blues
代替plt.cm.Blues
。 -
使用字符串字面量:
作为一种解决方法,你可以直接使用字符串字面量
'Blues'
来代替plt.cm.Blues
:python ax.scatter(x_value, y_value, c=y_value, cmap='Blues', s=5)
这些解决方法之一应该可以解决问题。如果仍然遇到问题,请提供有关你的IDE、matplotlib版本和操作系统的更多信息,以便我为你提供进一步的帮助。
标签:python,matplotlib From: 65459235