python - 标签在 matplotlib 散点图中不起作用
问题描述
我正面临 matplotlib 散点图的这种奇怪行为,其中标签不起作用。请参阅下面的代码片段 -
import matplotlib
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
import numpy as np
def get_data():
n = 10
theta = np.linspace(-4 * np.pi, 4 * np.pi, n)
z = np.linspace(-2, 2, n)
r = z**2 + 1
x = r * np.sin(theta)
y = r * np.cos(theta)
return x, y, z
x, y, z = get_data()
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
ax.plot(x, y, z, c='r', marker='o', label='plot label')
ax.scatter(x, y, z+1, c='b', marker='^', label='scatter label')
ax.set_xlabel('x')
ax.set_ylabel('y')
ax.set_zlabel('z')
ax.legend()
plt.show()
上面的代码产生以下图(注意散点图对应的标签缺失) -
ax.plot
令人惊讶的是,如果被评论,我会收到以下错误 -
/usr/lib/pymodules/python2.7/matplotlib/axes.py:4747: UserWarning: No labeled objects found. Use label='...' kwarg on individual plots.
warnings.warn("No labeled objects found. "
以下是有关系统的信息-
- Python 2.7.6
- matplotlib 版本:1.3.1
- Ubuntu 14.04 LTS 64 位
请问有什么办法可以显示散点图的标签吗?
解决方案
我试图在我的环境中运行你的代码,它适用于两个标签显示。这是我的版本
- 蟒蛇:2.7.12
- matplotlib:2.2.2
所以你可能只需要更新 matplotlib。
推荐阅读
- python-3.x - 位置参数错误并解决它
- javascript - 如何解析 URI.js 中的主机名以删除“www。”?
- python - 网状包可以在 IPython.display 中显示图像吗?
- reactjs - 如何为 TypeScript React 应用程序设置键/值默认状态
- python - 使用 xml.etree 保留命名空间
- python - 使用多个参数对列表进行排序
- .net-core - GetProperties() 顺序不一致(.NET Core 2 和 .NET Core 3)
- php - 在带有 PHP - 核心库的电报机器人中使用 getChatMember 的正确语法是什么?
- ssh - 无法在 Windows PC 上的 ActiveTcl 中使用期望生成 ssh
- css - 仅使用 CSS,有没有办法将特定图像的颜色更改为黑底白字?