首页 >后端开发 >Python教程 >如何在 Matplotlib 中对散点图类别进行颜色编码?

如何在 Matplotlib 中对散点图类别进行颜色编码?

Susan Sarandon
Susan Sarandon原创
2024-10-17 16:39:02291浏览

How to Color-Code Scatter Plot Categories in Matplotlib?

如何在 Matplotlib 中为不同的分类级别绘制不同的颜色

问题

给定一个带有分类变量的 DataFrame,您想要创建一个散点图其中每个类别都有自己的颜色。

Matplotlib 解决方案

要在 Matplotlib 中指定不同类别的颜色,请在 plt.scatter 中使用 c 参数。此参数接受颜色数组或将类别映射到颜色的映射。

这是一个示例:

<code class="python">import matplotlib.pyplot as plt
import pandas as pd

# Define a DataFrame
df = pd.DataFrame({'category': ['A', 'B', 'C'], 'value': [10, 20, 30]})

# Create the scatter plot
colors = {'A': 'red', 'B': 'green', 'C': 'blue'}
plt.scatter(df['category'], df['value'], c=df['category'].map(colors))
plt.show()</code>

此代码将红色、绿色和蓝色分配给类别“A” 、 'B' 和 'C' 分别。

DataFrame GroupBy 和绘图

或者,您可以使用 DataFrame.groupby() 和 .plot() 来获得相同的结果:

<code class="python">fig, ax = plt.subplots(figsize=(6, 6))

df.groupby('category').plot(ax=ax, kind='scatter', x='category', y='value', color=colors)
plt.show()</code>

此代码假设存在将类别映射到颜色的颜色字典。

以上是如何在 Matplotlib 中对散点图类别进行颜色编码?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn