当前位置:网站首页>matplotlib散点图颜色分组图例

matplotlib散点图颜色分组图例

2022-08-09 22:10:00 奋斗中的打工人

效果

请添加图片描述

代码

import matplotlib.pyplot as plt
import random

color = ['#ef476f', '#ffd166', '#118AD5', '#FFADAD', '#FF6666', '#FBA46A', '#FFD6ED', '#FDFFB6', '#CAFFBF',
         '#9BF6FF', '#A0C4FF', '#BDB2FF', '#FFC6FF',
         '#C5D188', '#81E3AC', '#A0EBD8', '#74DEE8', '#8FBAFF', '#9D8CFF', '#FFB3FF', '#FA7C5C', '#B9C295',
         '#82D177',
         '#82C2C0', '#C47CC4', '#F4F1DE', '#E07A5F', '#81B29A', '#F2CC8F', '#F5E898', '#04BD6E', '#267092',
         '#20C5D4',
         '#9EB0E7', '#D71108', '#B76B9C', '#629D29', '#F52382', '#3CAAA5', '#1770D3', '#6844BD', '#53EFD6',
         '#A7DBDE',
         '#D135BA', '#4D89D6', '#1EEF6D', '#8811EF', '#01C86A', '#939266', '#A363AE', '#E3B687', '#CFD213',
         '#940DFD',
         '#B91D12', '#D2DB25', '#9227BE', '#A37E50', '#B26C73', '#D632B9', '#2560BE', '#EE0051', '#83768E',
         '#B7BF36',
         '#03045E', '#023E8A', '#0077B6', '#00B4B8', '#48CAE4', '#370617', '#6A040F', '#E85D04', '#003049',
         '#005F73',
         '#0A9396', '#94D2BD', '#E9D8A6', '#CA6702', '#AE2012', '#7F4F24', '#A68A64', '#C2C5AA', '#656D4A',
         '#EAE4E9',
         '#FDE2E4', '#E2ECE9', '#DFE7FD', '#F4F1DE', '#81B29A', '#F2CC8F', '#CCD5AE', '#D4A373', '#F94144',
         '#227C9D', '#00A6ED', '#15616D', '#FFECD1', '#57CC99', '#C7F9CC', '#0077B6', '#90E0EF', '#DD6E42',
         '#70C1B3', '#F79D65']  # 颜色列表
x_list = [i for i in range(20)]  # 生成X坐标
y_list = [random.randint(1, 10) for i in range(20)]  # 生成y坐标
c = [color[i] for i in range(2)]  # 颜色
label_list1 = ["A" for i in range(10)]  # 生成A标签
label_list2 = ["B" for i in range(10)]  # 生成A标签
label_list3 = label_list1 + label_list2
for i in range(len(x_list)):
    if i < 10:
        if i == 0:  # 第一次绘图需要加标签,后面再加标签图例会重复
            plt.scatter(x_list[i], y_list[i], c=c[0], label="A")  # 绘制散点图
        else:
            plt.scatter(x_list[i], y_list[i], c=c[0])
    else:
        if i == 10:  # 第一次绘图需要加标签,后面再加标签图例会重复
            plt.scatter(x_list[i], y_list[i], c=c[1], label="B")  # 绘制散点图
        else:
            plt.scatter(x_list[i], y_list[i], c=c[0])
plt.xticks(x_list, label_list3)  # 设置标签
plt.legend(loc='upper left')  # 设置图例
plt.show()
原网站

版权声明
本文为[奋斗中的打工人]所创,转载请带上原文链接,感谢
https://blog.csdn.net/summerriver1/article/details/126242554