当我将c选项添加到matplotlib中的散点图时,x轴标记为dissapear。这是一个例子:https://github.com/Kornel/scatterplot-matplotlib/blob/master/Scatter%20plot%20x%20axis%20labels.ipynb(欢迎拉取请求:))
这是与笔记本中相同的示例:
import pandas as pd
import matplotlib.pyplot as plt
test_df = pd.DataFrame({
"X": [1, 2, 3, 4],
"Y": [5, 4, 2, 1],
"C": [1, 2, 3, 4]
})
现在比较结果:
test_df.plot(kind="scatter", x="X", y="Y", s=50);
要:
test_df.plot(kind="scatter", x="X", y="Y", c="C");
x轴标签在哪里?这是我缺少的一个功能吗?
熊猫版:0.18.1 Matplotlib:1.5.3 Python:3.5.2
感谢您的帮助, 科内尔
编辑: @Kewl指出的解决方案是调用plt.subplots并指定轴:
fig, ax = plt.subplots()
test_df.plot(kind="scatter", x="X", y="Y", s=50, c="C", cmap="plasma", ax=ax);
给出
P.S。它看起来像一个jupyter问题,没有jupyter笔记本时调用标签很好
答案 0 :(得分:10)
这看起来像一只奇怪的虫子,熊猫密谋给我看!这是解决问题的方法:
fig, ax = plt.subplots()
df.plot(kind='scatter',x='X', y='Y', c='C', ax=ax)
ax.set_xlabel("X")
plt.show()
这将为您提供您期望的图表:
答案 1 :(得分:0)
答案 2 :(得分:0)
你可以这样做。
plt.scatter(x="X", y="Y", c=df.color)
plt.xlabel("X axis label")
plt.ylabel("Y axis label")