python - 在同一个图中绘制多个散点图而不是 Facet Grids
问题描述
目前,我在 seaborn 中有一些使用 Facet Grids 的图。我有以下代码:
g = sns.FacetGrid(masterdata1,col = "courseName")
g=g.map(plt.scatter, "SubjectwisePercentage", "SemesterPercentage")
上面的代码绘制了一个学期内不同课程的学科百分比与学期百分比。如何在单个图中绘制不同的散点图,而不是在构面网格上绘制多个图?在单个图中,每个课程的绘制点应该是不同的颜色。
有在线链接指定如何在单个图中绘制不同的数据集。但是我需要使用相同的数据集。因此,我需要指定col="courseName"
或等效的东西,以在单个图中绘制课程数据。我不确定如何做到这一点。预先感谢您的帮助。
解决方案
您可以尝试使用 seaborn 的散点图功能。它允许定义 , ,x
和,甚至。这提供了数据的 5D 视图。有时,人们喜欢制作并基于相同的变量以获得更好看的图表。y
hue
style
size
hue
style
示例代码(不是我的,因为 seaborn 文档几乎解释了所有内容)。
import seaborn as sns
import matplotlib.pyplot as plt
sns.set(style="ticks", color_codes=True)
tips = sns.load_dataset("tips")
# g = sns.FacetGrid(tips, col="sex", hue="time", palette="Set1",
# hue_order=["Dinner", "Lunch"])
# g= (g.map(plt.scatter, "total_bill", "tip")).add_legend()
# sns.scatterplot(data=tips, x="total_bill", y="tip", hue='time', style='sex')
sns.scatterplot(data=tips, x="total_bill", y="tip", hue='time', style='sex', size='size')
plt.show()
推荐阅读
- django - ssl 无效 ClearDB Heroku Django
- c# - 用小写替换大写字母 - 反之亦然
- javascript - 使用引号和单引号时使用的第三个字符
- c++ - 在 clion 中使用 WSL 时 C++ 代码无法编译
- python - 如何根据列的子字符串值和计数使用 Python Dataframe 创建数据透视表?
- javascript - 当我使用 dataType 作为“文本”的 ajax 调用时,为什么浏览器会显示 XML 解析错误?
- javascript - 打开由javascript生成的链接并返回原始页面后如何使用selenium保留原始页面的元素
- javascript - 如何在图表js注释上添加图例
- javascript - 通过 iframe 嵌入的 Excel 默认打开特定的工作表
- javascript - 用cheerio检测内联元素?