2

这是我的代码:

import pandas as pd
import matplotlib.pyplot as plt

wine = pd.read_csv('red wine quality.csv')

wine = wine.dropna()

plt.figure()
wine.plot.scatter(x = 'pH', y = 'alcohol', c = 'quality', alpha = 0.4,\
                  cmap = plt.get_cmap('jet'), colorbar = True)
plt.savefig('scatter plot.png')
plt.tight_layout()
plt.show()

这是我得到的情节:

在此处输入图像描述

我得到一个散点图,y 轴标记为“酒精”,范围为 9-15,颜色条标记为“质量”,范围为 3-8。我以为我在我的代码中指定了 x 轴将显示为“pH”,但我什么也没得到。我尝试将我的 figsize 调整为 [8, 8],将 dpi 设置为 100,并标记轴,但没有任何东西可以显示 x 轴。我究竟做错了什么?

这是一个可以玩的 MCVE:

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

df = pd.DataFrame(np.random.randn(50, 4), columns=['A', 'B', 'C', 'D'])

plt.figure()
df.plot.scatter(x = 'A', y = 'B', c = 'C', alpha = 0.4,\
                  cmap = plt.get_cmap('jet'), colorbar = True)
plt.tight_layout()
plt.show()
4

1 回答 1

1

Pandas 散点图上未显示的 X 轴标签和次要刻度标签是 Pandas 的一个已知且未解决的问题(请参阅错误:使用 matplotlib 后端时散点图 x 轴标签随色标消失·问题 #36064)。

使用 Matplotlib 作为绘图后端时,显示具有颜色图的 Pandas 散点图的 Jupyter 笔记本会出现此错误。最简单的解决方法是传递sharex=False给 pandas.DataFrame.plot.scatter。

请参阅让 pandas plot() 显示 xlabel 和 xvalues

于 2021-10-21T12:28:43.013 回答