matplotlib.pyplot.scatter的颜色问题

1.通常在import包时,将matplotlib.pyplot缩写为plt,也就是

import matplotlib.pyplot as plt

2.plt可用于画散点图,也就是plt.scatter,这个函数常见的可选参数有

plt.scatter(x,y,s,c)

其中x,y是x轴,y轴的坐标,s是点的大小,如果s是一个数字,那么就表示所有点的大小都是这个,如果s是一个和x,y一样长的数组,那就表示x[i]对应点的大小是s[i],例子如下

x=np.linspace(0,5,100)
y=3*x+4
s=x*x
plt.scatter(x,y,s)

输出如下:
在这里插入图片描述
可以看到,点的大小在变化

c表示颜色,如果只是一个字符串就是所有点都是这个颜色,比如’b’表示蓝色,'r’表示红色,例子如下:

x=np.linspace(0,5,100)
y=3*x+4
s=x*x
plt.scatter(x,y,s,'r')

输出如下:
在这里插入图片描述
如果c是一个#号加三个16进制的数字,那么会将这三个数字作为RGB数来选择颜色,例子如下:

x=np.linspace(0,5,100)
y=3*x+4
s=x*x
plt.scatter(x,y,s,color='#00F8FF')

输出如下:
在这里插入图片描述
如果c是一个和x,y一样长的数组,那么表示x[i]对应的点的颜色是c[i]对应的颜色,例子如下

x=np.linspace(0,5,100)
y=3*x+4
s=x*x
c=x*x*x
fig1=plt.scatter(x,y,s,c)
plt.colorbar(fig1)

输出如下:
在这里插入图片描述
其中plt.colorbar(fig1)用于显示图中最右边的颜色条,这个颜色是可以更换的,通过添加参数cmap来实现,例子如下:

x=np.linspace(0,5,100)
y=3*x+4
s=x*x
c=x*x*x
fig1=plt.scatter(x,y,s,c,cmap='hot')
plt.colorbar(fig1)

输出如下
在这里插入图片描述
cmap可选参数如下:
[‘viridis’, ‘inferno’, ‘plasma’, ‘magma’]

[‘Blues’, ‘BuGn’, ‘BuPu’, ‘GnBu’, ‘Greens’, ‘Greys’, ‘Oranges’, ‘OrRd’, ‘PuBu’, ‘PuBuGn’, ‘PuRd’, ‘Purples’, ‘RdPu’, ‘Reds’, ‘YlGn’, ‘YlGnBu’, ‘YlOrBr’, ‘YlOrRd’]

[‘afmhot’, ‘autumn’, ‘bone’, ‘cool’, ‘copper’, ‘gist_heat’, ‘gray’, ‘hot’, ‘pink’, ‘spring’, ‘summer’, ‘winter’]

[‘BrBG’, ‘bwr’, ‘coolwarm’, ‘PiYG’, ‘PRGn’, ‘PuOr’, ‘RdBu’, ‘RdGy’, ‘RdYlBu’, ‘RdYlGn’, ‘Spectral’, ‘seismic’]

[‘Accent’, ‘Dark2’, ‘Paired’, ‘Pastel1’, ‘Pastel2’, ‘Set1’, ‘Set2’, ‘Set3’]

[‘gist_earth’, ‘terrain’, ‘ocean’, ‘gist_stern’, ‘brg’, ‘CMRmap’, ‘cubehelix’, ‘gnuplot’, ‘gnuplot2’, ‘gist_ncar’, ‘nipy_spectral’, ‘jet’, ‘rainbow’, ‘gist_rainbow’, ‘hsv’, ‘flag’, ‘prism’]

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值