Home >Backend Development >Python Tutorial >How to Create Scatter Plots with Distinct Colors for Categorical Levels in Python Using Matplotlib?

How to Create Scatter Plots with Distinct Colors for Categorical Levels in Python Using Matplotlib?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-10-17 16:32:02880browse

How to Create Scatter Plots with Distinct Colors for Categorical Levels in Python Using Matplotlib?

Drawing Scatter Plots with Different Colors for Categorical Levels in Python with Matplotlib

In Matplotlib, a Python library for creating static, animated, and interactive visualizations in Python, you can plot different scatter plots with different colors for each level of a categorical variable by leveraging the c argument of the plt.scatter function.

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

df = pd.DataFrame({'x': [1, 2, 3], 'y': [4, 5, 6], 'color': ['red', 'blue', 'green']})

colors = {'red': 'tab:red', 'blue': 'tab:blue', 'green': 'tab:green'}

plt.scatter(df['x'], df['y'], c=df['color'].map(colors))
plt.show()</code>

By passing the c argument, a dictionary mapping color names to RGB values can be used to specify the color of each point. The map method of Pandas then applies the color mapping to the df['color'] column, effectively assigning each point a unique color.

<code class="python">colors = {'D': 'tab:blue', 'E': 'tab:orange', 'F': 'tab:green', 'G': 'tab:red', 'H': 'tab:purple', 'I': 'tab:brown', 'J': 'tab:pink'}

ax.scatter(df['carat'], df['price'], c=df['color'].map(colors))</code>

This approach allows for a more customized color scheme and greater control over the colors used in the plot. By using a color dictionary, users can easily modify the color scheme as needed.

The above is the detailed content of How to Create Scatter Plots with Distinct Colors for Categorical Levels in Python Using Matplotlib?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn