正如标题所读,我正在尝试使用Seaborn用双变量密度覆盖散点图。我对这个软件包非常陌生,因此答案很明显。这是我当前的代码。 (摘自https://elitedatascience.com/python-seaborn-tutorial#)
Urllib.request.urlretrieve
我的问题是,这些显示为2个单独的图。本教程暗示此覆盖应该很简单。
编辑:这是我的结果
答案 0 :(得分:1)
如果阅读seaborn的doc,您会看到sns.lmplot()
结合了regplot()
和FacetGrid
,而sns.kdeplot()
返回了axes
对象。因此,您可能想使用图形级功能sns.regplot()
来将两个图放置在同一图形中。可以将代码调整为以下内容。
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
df = pd.read_csv('Pokemon.csv', encoding='ISO-8859-1')
# plotting
plt.figure(figsize=(10,6))
sns.relplot(x='Attack', y='Defense', hue='Stage', data=df)
sns.kdeplot(df.Attack, df.Defense)
plt.title('Density vs Scatter');
如果将Jupyter用作IDE,请确保将所有代码放在同一单元格的# plotting
下。对于其他IDE,请选择并一起运行代码。否则,它们将显示为两个单独的图。