python散点图密度颜色_python – matplotlib散点图颜色作为第三个变量的函数

这适用于我,使用matplotlib 1.1:

import numpy as np

import matplotlib.pyplot as plt

x = np.arange(10)

y = np.sin(x)

plt.scatter(x, y, marker='+', s=150, linewidths=4, c=y, cmap=plt.cm.coolwarm)

plt.show()

结果:

或者,对于n个点,使用shape(n,3)创建一个RGB颜色值数组,并将其分配给scatter()的edgecolors关键字参数:

import numpy as np

import matplotlib.pyplot as plt

x = np.linspace(0, 20, 100)

y = np.sin(x)

z = x + 20 * y

scaled_z = (z - z.min()) / z.ptp()

colors = plt.cm.coolwarm(scaled_z)

plt.scatter(x, y, marker='+', edgecolors=colors, s=150, linewidths=4)

plt.show()

结果:

该示例通过将z值缩放到[0,1]范围来获取RGBA值,并使用缩放值调用colormap plt.cm.coolwarm。当以这种方式调用时,matplotlib色彩映射返回一个RGBA值的数组,每一行都给出相应输入值的颜色。例如:

>>> t = np.linspace(0, 1, 5)

>>> t

array([ 0. , 0.25, 0.5 , 0.75, 1. ])

>>> plt.cm.coolwarm(t)

array([[ 0.2298, 0.2987, 0.7537, 1. ],

[ 0.5543, 0.6901, 0.9955, 1. ],

[ 0.8674, 0.8644, 0.8626, 1. ],

[ 0.9567, 0.598 , 0.4773, 1. ],

[ 0.7057, 0.0156, 0.1502, 1. ]])

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值