📜  python create dictionary 将 clors 随机分配给分类变量 - Python (1)

📅  最后修改于: 2023-12-03 15:04:04.639000             🧑  作者: Mango

Python - 将颜色随机分配给分类变量

在数据分析中,有时需要将分类变量随机分配到不同的颜色。本文将介绍如何使用Python创建字典,并将颜色随机分配给分类变量,以实现数据可视化。

1. 创建字典

首先,让我们创建一个字典。字典是Python中一种非常实用的数据结构,可用于存储键值对。

import random

categories = ["category1", "category2", "category3", "category4", "category5"]
colors = ["#FF5733", "#7FFF00", "#00FFFF", "#9400D3", "#FFC0CB"]

category_colors = {}
for category in categories:
    category_colors[category] = random.choice(colors)
    
print(category_colors)

执行上述代码,将输出类似以下的结果:

{'category1': '#00FFFF', 'category2': '#FF5733', 'category3': '#00FFFF', 'category4': '#7FFF00', 'category5': '#00FFFF'}
2. 随机分配颜色

现在让我们使用上述创建的字典,将颜色随机分配给分类变量。

import pandas as pd
import matplotlib.pyplot as plt

# 生成示例数据
data = pd.DataFrame({
    "category": ["category1", "category1", "category2", "category3", "category4", "category5", "category5"],
    "value": [1, 2, 3, 4, 5, 6, 7]
})

# 获取分类变量并设置颜色
categories = data["category"].unique()
category_colors = {}
for category in categories:
    category_colors[category] = random.choice(colors)

# 绘制图像
fig, ax = plt.subplots()

for i, category in enumerate(categories):
    ax.scatter(
        x="value",
        y="value",
        data=data.loc[data["category"] == category, :],
        c=category_colors[category],
        label=category
    )

ax.legend()
plt.show()

上述代码首先生成一个示例数据,然后获取分类变量并设置颜色。最后,根据颜色和分类变量,绘制了一个散点图。

结论

本文介绍了如何使用Python创建字典,并将颜色随机分配给分类变量,以实现数据可视化。使用Python的字典和随机选择功能,我们可以快速创建具有不同颜色的分类变量,从而更好地理解和展示数据。