【问题标题】:How can I pass size argument to sns.FacetGrid.map()?如何将大小参数传递给 sns.FacetGrid.map()?
【发布时间】:2023-01-07 06:37:34
【问题描述】:

我正在尝试使用 CIACountries.csv 使用熊猫数据框绘制散点图

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

data = pd.read_csv("CIACountries.csv")


grid = sns.FacetGrid(data, col="net_users")
grid.map(sns.scatterplot, "educ", "gdp", "roadways")
plt.yscale("log", basey=10)

“道路”列目前用作色调参数 我希望“道路”列代表散点图中点的大小。 有什么办法可以做到这一点?

我尝试放置另一个“roadways”参数,但在放入“styles”参数时会引发错误

grid.map(sns.scatterplot, "educ", "gdp", "roadways", "roadways")

【问题讨论】:

    标签: python seaborn


    【解决方案1】:

    您可以使用.map_dataframe 并添加hue=size= 参数。以下代码使用 seaborn 的 tips 数据集以便于重现。请注意,size= 表示sns.scatterplotsize 参数,而"size" 是提示数据集的“大小”列(即表格大小)。

    import matplotlib.pyplot as plt
    import seaborn as sns
    
    tips = sns.load_dataset('tips')
    g = sns.FacetGrid(tips, col="day")
    g.map_dataframe(sns.scatterplot, "total_bill", "tip", hue="sex", size="size")
    g.add_legend()
    plt.show()
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-01-19
      • 1970-01-01
      • 2013-01-31
      • 1970-01-01
      • 1970-01-01
      • 2016-02-01
      • 2020-10-09
      相关资源
      最近更新 更多