Home >Backend Development >Python Tutorial >How to Color-Code Scatter Plot Categories in Matplotlib?
Given a DataFrame with categorical variables, you want to create a scatter plot where each category has its own color.
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.
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.
The above is the detailed content of How to Color-Code Scatter Plot Categories in Matplotlib?. For more information, please follow other related articles on the PHP Chinese website!