您可以使用带有基于色图和散点图归一化颜色的空图来创建图例手柄.

import pandas as pd

import numpy as np; np.random.seed(1)

import matplotlib.pyplot as plt

x = [np.random.normal(5,2, size=20), np.random.normal(10,1, size=20),

np.random.normal(5,1, size=20), np.random.normal(10,1, size=20)]

y = [np.random.normal(5,1, size=20), np.random.normal(5,1, size=20),

np.random.normal(10,2, size=20), np.random.normal(10,2, size=20)]

c = [np.ones(20)*(i+1) for i in range(4)]

df = pd.DataFrame({"x":np.array(x).flatten(),

"y":np.array(y).flatten(),

"colors":np.array(c).flatten()})

size=81

sc = plt.scatter(df['x'], df['y'], s=size, c=df['colors'], edgecolors='none')

lp = lambda i: plt.plot([],color=sc.cmap(sc.norm(i)), ms=np.sqrt(size), mec="none",

label="Feature {:g}".format(i), ls="", marker="o")[0]

handles = [lp(i) for i in np.unique(df["colors"])]

plt.legend(handles=handles)

plt.show()

另外,您也可以按颜色列中的值过滤数据框,例如使用groubpy,并为每个功能绘制一个散点图:

import pandas as pd

import numpy as np; np.random.seed(1)

import matplotlib.pyplot as plt

x = [np.random.normal(5,2, size=20), np.random.normal(10,1, size=20),

np.random.normal(5,1, size=20), np.random.normal(10,1, size=20)]

y = [np.random.normal(5,1, size=20), np.random.normal(5,1, size=20),

np.random.normal(10,2, size=20), np.random.normal(10,2, size=20)]

c = [np.ones(20)*(i+1) for i in range(4)]

df = pd.DataFrame({"x":np.array(x).flatten(),

"y":np.array(y).flatten(),

"colors":np.array(c).flatten()})

size=81

cmap = plt.cm.viridis

norm = plt.Normalize(df['colors'].values.min(), df['colors'].values.max())

for i, dff in df.groupby("colors"):

plt.scatter(dff['x'], dff['y'], s=size, c=cmap(norm(dff['colors'])),

edgecolors='none', label="Feature {:g}".format(i))

plt.legend()

plt.show()

两种方法产生相同的图:

python不带颜色的图形_python-Matplotlib添加基于现有颜色系列的图例相关推荐

  1. python 绘制带阴影的图形

    python 绘制带阴影的图形 设置图形大小 import numpy as np import matplotlib.pyplot as plt plt.figure(figsize=[4,4]) ...

  2. python不带颜色的图形_python – 为什么seaborn pairplot中的kde子图中没有显示颜色?...

    使用参数创建seaborn pairplot sns.pairplot(iris.drop("Id", axis=1), diag_kind="kde", hu ...

  3. python中plot函数的属性_Python matplotlib 学习-绘图函数

    1 所使用函数说明 (1) plot函数 plt.plot(x,y,ls='--',lw =2,label='text') 参数说明 ● x:x轴上的数值. ● y:y轴上的数值. ● ls:折线图的 ...

  4. python中color的用法顺序_Python Matplotlib.colors.Normalize用法及代码示例

    Matplotlib是Python中令人惊叹的可视化库,用于数组的二维图. Matplotlib是一个基于NumPy数组的多平台数据可视化库,旨在与更广泛的SciPy堆栈配合使用. matplotli ...

  5. idle不是python自带的开发工具_Python的开发工具

    通常情况下,为了提高开发效率,需要使用相应的开发工具.进行Python开发也可以使用开发工具.下面将详细介绍Python自带的IDLE 一使用自带的IDLE 在安装Python后,会自动安装一个IDL ...

  6. python自带网页解析器_python 之网页解析器

    一.什么是网页解析器 1.网页解析器名词解释 首先让我们来了解下,什么是网页解析器,简单的说就是用来解析html网页的工具,准确的说:它是一个HTML网页信息提取工具,就是从html网页中解析提取出& ...

  7. python的contour怎么画虚线_Python+Matplotlib画contour图

    在本文中,你将学习到以下内容: 理解画contour图的数据结构 contour图的参数调节 如何添加colorbar 我们先假设x, y的取值范围如下: import matplotlib.pypl ...

  8. python用for循环画多个图形_Python matplotlib读取excel数据并用for循环画多个子图subplot操作...

    Python matplotlib读取excel数据并用for循环画多个子图subplot操作,英语,总分,平均,数据,语文 Python matplotlib读取excel数据并用for循环画多个子 ...

  9. python条形图分组颜色_python – Matplotlib – 为什么条形图线条颜色是黑色的?

    我使用Matplotlib来绘制浮动列表.如果我的列表长度为100个浮点数,则图表会显示正确的颜色.但如果列表长785浮点数,那么它只显示黑色.这是代码. import numpy as np imp ...

最新文章

  1. 2019 ACM - ICPC 西安邀请赛 B. Product (杜教筛) 简单数论(bushi)
  2. 智能合约的核心思想、语法重点、编程模式、示例、规范及架构
  3. tar命令语法(-[cxt],-[zj],-v,-f)
  4. java 制作报表案例_javaweb项目报表案例
  5. python怎么安装本地的egg_python egg怎么安装
  6. 学习C#从哪些方面去学习,才能全面掌握基础知识
  7. textureview 缩放_View的双指缩放以及移动
  8. java semaphore 等待_Java并发编程系列之Semaphore详解
  9. hbase中列簇和列_为什么不建议在hbase中使用过多的列簇
  10. ExtJs2.0学习系列(4)--Ext.FormPanel之第一式
  11. 你正在学 Web 自动化测试?Selenium 基本操作你了解嘛? | 原力计划
  12. 时间轮 Dialog 最简单的时间轮
  13. 解决安全频道支持出错,代码:80072F7D问题
  14. Python查找中国城市、省份
  15. Chisel Bootcamp安装说明
  16. 同是4G标准,TD和FDD谁更快?
  17. 基于javaweb+jsp的健康体检信息管理系统(JavaWeb MySQL JSP Bootstrap Servlet SSM SpringBoot)
  18. Windows通过IP地址向对方发送信息
  19. ZigBee技术[转]
  20. 敏捷 2016:行业分析研讨会

热门文章

  1. MySQL checkpoint机制详解
  2. ORA-12547: TNS:lost contact导致数据库无法启动
  3. 互动留言赠书:《Oracle高性能系统实战大全》
  4. 解读年度数据库PostgreSQL:如何巧妙地实现缓冲区管理器
  5. 荐书:《PostgreSQL指南:内幕探索》| 留言送书
  6. 缓存最关心的问题是什么
  7. 云图说丨初识数据工坊DWR
  8. 云图说|华为云数据复制服务 打造不一样的用户权限迁移
  9. 【响应式编程的思维艺术】 (2)响应式Vs面向对象
  10. html %3ca id=%3e,xss编码小结