首頁 >後端開發 >Python教學 >如何在 Matplotlib 中對散佈圖類別進行顏色編碼?

如何在 Matplotlib 中對散佈圖類別進行顏色編碼?

Susan Sarandon
Susan Sarandon原創
2024-10-17 16:39:02291瀏覽

How to Color-Code Scatter Plot Categories in Matplotlib?

How to Plot Different Colors for Different Categorical Levels in Matplotlib

Problem

Given a DataFrame with categorical variables, you want to create a scatter plot where each category has its own color.

Solution with Matplotlib

To specify colors for different categories in Matplotlib, use the c argument in plt.scatter. This argument accepts an array of colors or a mapping that maps categories to colors.

Here's an example:

<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>

This code assigns red, green, and blue colors to categories 'A', 'B', and 'C', respectively.

DataFrame GroupBy and Plotting

Alternatively, you can use DataFrame.groupby() and .plot() to achieve the same result:

<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>

This code assumes the existence of a colors dictionary that maps categories to colors.

以上是如何在 Matplotlib 中對散佈圖類別進行顏色編碼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn