Python matplotlib散点图x轴标签
当我将c选项添加到matplotlib中的散点图时,x轴标签将消失。下面是一个示例:(拉请求是受欢迎的:)) 以下是与笔记本中相同的示例:Python matplotlib散点图x轴标签,python,pandas,matplotlib,Python,Pandas,Matplotlib,当我将c选项添加到matplotlib中的散点图时,x轴标签将消失。下面是一个示例:(拉请求是受欢迎的:)) 以下是与笔记本中相同的示例: 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] }) 现在比较以下结果: tes
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);
致:
x轴标签在哪里?这是我缺少的功能吗
熊猫版本:0.18.1
Matplotlib:1.5.3
Python:3.5.2
谢谢你的帮助,
科内尔
编辑:正如@Kewl所指出的解决方案是调用plt.subplot并指定轴:
fig, ax = plt.subplots()
test_df.plot(kind="scatter", x="X", y="Y", s=50, c="C", cmap="plasma", ax=ax);
给予
另外,它看起来像一个jupyter问题,如果没有jupyter笔记本,标签就可以调用了,它看起来像一个奇怪的bug,有熊猫在向我密谋!这里有一个解决方法:
fig, ax = plt.subplots()
df.plot(kind='scatter',x='X', y='Y', c='C', ax=ax)
ax.set_xlabel("X")
plt.show()
这将为您提供您期望的图表:
如果您使用的是Anaconda,使用
conda forge
频道安装pandas
可以解决此问题
conda安装-c conda
我只是想说,我试着从anaconda控制台上切下的python外壳运行相同的代码,并且我能够看到“X”标签。pd.\uuuuuu版本:0.19.2 matplotlib.\uuuu版本:2.0.0 Python 3.6.0。也许只是一个或多个软件包的版本?如果我有时间(或者如果我在你身边),我会尝试用一个新的conda(或虚拟)环境来测试它,看看这是否能解决问题……还有:你有没有试过只把代码作为笔记本运行(使用Jupyter)?如果是这样的话,我会在没有笔记本的情况下测试它,看看这是否不仅仅是因为“X”轴没有出现,因为它在笔记本框架中没有足够的空间(只是猜测)。@umbe1987你说得对!它在jupyter之外工作。我试着调用tight_layout,但这并没有改变任何事情。对我来说,安装pandas with
conda forge
频道很有效conda安装-c conda forge pandas
非常感谢!你知道什么好笑吗?集合标签是冗余的。调用plt.subplot就可以了。请查看更新的笔记本。
fig, ax = plt.subplots()
df.plot(kind='scatter',x='X', y='Y', c='C', ax=ax)
ax.set_xlabel("X")
plt.show()