前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >论plt.scatter()画散点图未设置“颜色参数c”却能画出五颜六色点的原因

论plt.scatter()画散点图未设置“颜色参数c”却能画出五颜六色点的原因

作者头像
荣仔_最靓的仔
发布2021-09-07 17:13:37
1.2K0
发布2021-09-07 17:13:37
举报

目 录

1 问题描述

2 原因剖析

3 实例回顾

3.1 调用一次 plt.scatter() 方法产生一个点

3.2 调用三次 plt.scatter() 方法产生三个点

3.3 调用多次 plt.scatter() 方法产生多个点


1 问题描述

今天重点学习了 matplotlib 库的理论与用法,在进行到使用 matplotlib 库中 plt.scatter() 方法画散点图的内容学习时,遇到了一个问题:绘制散点时未设置“颜色参数c”却能画出五颜六色的点,找同学解决无果后在老师的指点下解决了该问题,现将问题产生原因分享给大家,希望给需要的人予以帮助!

画散点图关键语句中并未对颜色参数c进行设置:

代码语言:javascript
复制
plt.scatter(x, y, s, alpha=z)     # 关键语句

却能画出五颜六色的点:

2 原因剖析

我在此处用的是一个循环语句随机绘制出位置、大小、透明度不一的圆点。

matplotlib 的 plt.scatter() 方法在每次生成点时,为了让使用者容易区别这些点是不同次使用 plt.scatter() 方法产生的点,系统会自动为每一个点随机匹配一种颜色。

3 实例回顾

3.1 调用一次 plt.scatter() 方法产生一个点

代码语言:javascript
复制
plt.scatter(X[0], Y[0], s=111)

可以看到,未设置“颜色参数c”,调用一次 plt.scatter() 方法生成的一个点是方法默认蓝色。

3.2 调用三次 plt.scatter() 方法产生三个点

代码语言:javascript
复制
plt.scatter(X[0], Y[0], s=111)
plt.scatter(X[1], Y[0], s=111)
plt.scatter(X[2], Y[0], s=111)

可以看到,未设置“颜色参数c”,调用三次 plt.scatter() 方法生成的三个点是不同的三种颜色。

3.3 调用多次 plt.scatter() 方法产生多个点

代码语言:javascript
复制
for i in range(n):
    x, y, s = X[i], Y[i], S[i]
    print(x, y, s)
    plt.scatter(x, y, s)

可以看到,未设置“颜色参数c”,调用多次 plt.scatter() 方法生成的多个点是多种不同颜色。

:X、Y用于产生随机坐标 S:用以确定生成点随机大小


感谢阅读

END

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2021-07-19 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1 问题描述
  • 2 原因剖析
  • 3 实例回顾
    • 3.1 调用一次 plt.scatter() 方法产生一个点
      • 3.2 调用三次 plt.scatter() 方法产生三个点
        • 3.3 调用多次 plt.scatter() 方法产生多个点
          • 感谢阅读
          • END
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档