复习回顾

我们在往前几期中对matplotlib模块学习,对常用的反映数据变化的折线图,对比数据类型差异的柱状图和反应数据频率分布情况的直方图。

往前内容快速查看

超详细的Python matplotlib 绘制柱状图_编程简单学的博客-

这么详细的Python matplotlib 绘制图形 还不赶紧收藏_编程简单学的博客

这么详细的Python matplotlib底层原理浅析_编程简单学的博客-

python入门到进阶,爬虫数据分析全套资料分享讲解 (#1) ·

在数据统计图表中,有一种图表是散列点分布在坐标中,反应数据随着自变量变化的趋势。

本期,我们将详细学习matplotlib 绘制散点图相关属性的学习,let's go~

1. 散点图概述

  • 什么是散点图?

    • 散点图用于在水平轴和垂直轴上绘制数据点,数据以点状分布在左标系中
    • 散点图表示因变量随着自变量而变化的大致趋势
    • 散点图由多个左坐标点构成,考察坐标点的分布,判断是否存在某种关联或者分布模式
    • 对于不同类别的点,则由图表中不同形状或颜色的标记符表示
    • 散点图主要分为散点图矩阵、三维散点图、ArcGIS散点图
  • 散点图使用场景

    • 散点图用于比较跨类别的聚合数据
    • 散点图用于分析数据线性、多项式趋势情况
    • 散点图用于四象限分析
    • 散点图用于找到数据趋势公式
    • 散点图可以为后期精确的图标进行辅助
  • 绘制散点图步骤

    1. 导入matplotlib.pyplot模块
    2. 准备数据,可以使用numpy/pandas整理数据
    3. 调用pyplot.scatter()绘制散点图
  • 案例展示

本次案例我们将分析某产品不同定价销售额分布情况

  • 案例需要准备两组数据x和y轴,其中x,y轴的数据量要保持一致

    x_value = np.random.randint(50,100,50)
    y_value = np.random.randint(500,1000,50)
    复制代码
  • 绘制散点

    import matplotlib.pyplot as plt
    import numpy as npplt.rcParams["font.sans-serif"]=['SimHei'] plt.rcParams["axes.unicode_minus"]=Falsex_value = np.random.randint(50,100,50)
    y_value = np.random.randint(500,1000,50)plt.scatter(x_value,y_value)plt.title("data analyze")
    plt.xlabel("销售价格")
    plt.ylabel("销售额")plt.show()

2. 散点图属性

  • 设置散点大小

    • 关键字:s
    • 传入数据类型为list或者数字,默认为20
  • 设置散点颜色

    • 关键字:c
    • 默认颜色为蓝色
    • 取值范围
      • 表示颜色的英文单词:如红色"red"
      • 表示颜色单词的简称如:红色"r",黄色"y"
      • RGB格式:十六进制格式如"#88c999";(r,g,b)元组形式
      • 也可以传入颜色列表
  • 设置散点样式

    • 关键字:marker
    • 系统默认为'o'小圆圈
    • 取值还可以取:('o', 'v', '^', '<', '>', '8', 's', 'p', '*', 'h', 'H', 'D', 'd', 'P', 'X')
  • 设置透明度

    • 关键字:alpha
    • 取值范围:0~1
  • 设置散点边框

    • 关键字: edgecolor
    • 默认为face
    • 取值选项:
      • "face"|"none"
      • 表示颜色的英文单词、简写或者rgb
  • 我们结合上一节的案例,设置散点大小,散点边框为粉色,散点颜色为#88c999

    size = (20*np.random.rand(50))**2
    plt.scatter(x_value,y_value,s=area,c="#88c999",edgecolors="pink"

3. 添加折线散点图

我们在查看散点图时,有时候会借助折线图来辅助分析。我们继续拿第一节的数据来分析。

  • 我们使用np.random.rand()来生成100个随机数据

    x_value = 100*np.random.rand(100)
    y_value = 100*np.random.rand(100)
    复制代码
  • 需要借助我们高中的数学公司如sin\cos函数等(高中数学都还给老师了)

  • 使用pyplot.plot()方法来绘制曲线图

    r0 = 80
    plt.scatter(x_value,y_value,c="hotpink",edgecolors="blue")
    the =  np.arange(0,np.pi/2, 0.01)
    plt.plot(r0*np.cos(the),r0*np.sin(the))

4. 多类型散点图

我们在观察数据的时候,会同时比较多个类型数据,因此我们可以通过颜色或者散点样式来区分表示

  • 方式一: 使用颜色来区分不同类别时,我们需要再添加新的数据和scatter方法

    x_value = 100*np.random.rand(100)
    y_value = 100*np.random.rand(100)
    y1_value = 100*np.random.rand(100)plt.scatter(x_value,y_value, c="hotpink",edgecolors="blue",label="A产品")plt.scatter(x_value,y1_value, c="#88c999", edgecolors="y",label="B产品")
    

方式二:我们可以使用marker来标记不同类型,例如我们使用上一节的案例再添加一个scatter()

r0 = 80size = (20*np.random.rand(100))**2r = np.sqrt(x_value**2+y_value**2)
area = np.ma.masked_where(r > r0,size)
area1 = np.ma.masked_where(r <= r0, size)plt.scatter(x_value,y_value,s=area,c="hotpink",edgecolors="blue",label="A产品")plt.scatter(x_value, y_value, s=area1, c="red", edgecolors="y",marker="^",label="B产品")the =  np.arange(0,np.pi/2, 0.01)
plt.plot(r0*np.cos(the),r0*np.sin(the))

5. 颜色条散点图

在散点图表中,我们为了对每个点颜色深浅进行表示,我们可以借助cmap颜色条来进行添加

  • 颜色条显示关键字:cmap
  • 默认为viridis,可选值如accent_r,blues_r,brbg_r,greens_r等等
  • 表示每种颜色从0~100的值

当要显示颜色列表时,我们需要调用pyplot.colorbar()

例如,我们对散点图添加一个红色系的颜色列表

size = (20*np.random.rand(100))**2
color = np.random.randint(0,100,100)
plt.scatter(x_value,y_value, s=size, c=color,label="A产品",cmap="afmhot_r")
plt.colorbar()

6. 曲线散点图

散点图都是由一个一个坐标点组成的,当这些点具有一定规律时,我们可以使用散点图来绘制曲线。

我们使用scatter()绘制一个2次方的幂函数

x_value = list(range(1, 100))
y_value = [x ** 2 for x in x_value]plt.scatter(x_value,y_value,c=y_value,cmap="hot_r",edgecolors="none",s=50)plt.show()
复制代码

总结

本期,我们对matplotlib.pyplot 绘制散点图scatter方法及相关属性进行详细的学习。对于暂时没有找到规律的数据来说,使用散点图可以快速发现数据的分布情况

Python matplotlib 绘制散点图 还不收藏起来相关推荐

  1. Python matplotlib绘制散点图

    Python matplotlib绘制散点图 上篇文章介绍了使用matplotlib绘制折线图,参考:https://blog.csdn.net/weixin_43790276/article/det ...

  2. 这么详细的Python matplotlib 绘制图形 还不赶紧收藏

    前言 我们前面对matplotlib模块底层结构学习,对其pyplot类(脚本层)类提供的绘制折线图.柱状图.饼图.直方图等统计图表的相关方法,列举往期文章如下. 超详细的Python matplot ...

  3. Python+matplotlib绘制散点图模拟心型图案

    推荐教材: <Python数据分析.挖掘与可视化>(慕课版)(ISBN:978-7-115-52361-7),董付国,人民邮电出版社,定价49.8元,2020年1月出版,2021年3月第6 ...

  4. Python matplotlib 绘制量场图

    复习回顾 matplotlib 是基于Python语言的开源项目,pyplot提供一系列绘制2D图形的方法.随着版本的迭代,matplotlib 模块也支持绘制3D图形mplot3d工具包,制作动态图 ...

  5. 不愧是摸鱼高手Python matplotlib 绘制频谱图都会,能怪老板不管

    复习回顾 matplotlib 是Python专门用来绘制渲染的模块,其底层主要分为脚本层.美工层和后端.脚本层为我们提供常见图形绘制如折线.柱状.直方.饼图.以往文章 这么详细的Python mat ...

  6. 超详细的Python matplotlib 绘制动态图

    复习回顾 在matplotlib模块中我们前面学习绘制如折线.柱状.散点.直方图等静态图形.我们都知道在matplotlib模块主要有三层脚本层为用户提供快捷的绘制图形方法,美工层接收到脚本层的命令后 ...

  7. python绘制散点图、如何选两列作为横坐标_Python利用matplotlib绘制散点图的新手教程...

    前言 上篇文章介绍了使用matplotlib绘制折线图,参考:https://www.jb51.net/article/198991.htm,本篇文章继续介绍使用matplotlib绘制散点图. 一. ...

  8. Python matplotlib 绘制等高线图

    前言 我们在往期对matplotlib.pyplot()方法学习,到现在我们已经会绘制折线图.柱状图.散点等常规的图表啦(往期的内容如下,大家可以方便查看往期内容) python入门到进阶,爬虫数据分 ...

  9. python读取excel画散点图-python学习之matplotlib绘制散点图实例

    要绘制单个点,可使用函数scatter(),并向其传递一对x和y坐标,它将在指定位置绘制一个点: """使用scatter()绘制散点图""" ...

最新文章

  1. corrplot包绘制相关性图
  2. 科大星云诗社动态20210520
  3. linux问题排查常用命令详解
  4. 重建AD域控制器的DNS服务器
  5. Python 配置文件之ConfigParser模块(实例、封装)
  6. 浮动div中的图片垂直居中
  7. 洛谷P2888 [USACO07NOV]牛栏Cow Hurdles
  8. MOQL—筛选器(Selector)(三)
  9. 【干货】高盛合伙人制度和激励机制!
  10. 如何将wmv视频格式快速转换成mp4视频呢
  11. 微pe工具箱是微软的吗_电脑装系统用一键装机好用还是微PE工具箱好用
  12. matlab求解拉格朗日第一方程,matlab求解拉格朗日方程肿么编程
  13. 【大屏可视化】大屏适配公式
  14. 人生中重要抉择:读研还是工作?
  15. 洛谷 P4883 mzf的考验 解题报告
  16. 4x root 红米_小米红米Note4X获取root权限教程
  17. java利用正则表达式提取字符串中的整数和小数部分
  18. coredns hosts插件
  19. excel 查找图相框或文本框中的内容
  20. VS报出的C2134,C4430,C2238错误

热门文章

  1. 宏基因组文章目录(9月1日更新)
  2. Python使用matplotlib可视化相关性分析热力图图heatmap、使用seaborn中的heatmap函数可视化相关性热力图(Correllogram)
  3. R语言生成数据及其95%置信区间数据(或者其它区间)、使用geom_ribbon函数为ggplot2图像手动添加置信区间的阴影区域using geom_ribbon to create shaded
  4. R语言Kaplan-Meier绘制生存分析、Log-rank假设检验、Cox回归曲线实战案例:恶性黑色素瘤的术后数据生存分析
  5. R语言泊松回归(poisson)模型案例:基于robust包的Breslow癫痫数据集
  6. 纤维追踪成像理论+核磁共振影像数据处理
  7. R绘制排序的条形图(Ordered Bar Chart)
  8. python的lambda表达式是什么?什么是回调函数?
  9. 计算机无法搜索程序,电脑搜索功能不能用的解决方法
  10. 博世力士乐液压_[Event Review] Company Visit Bosch Rexroth 博世力士乐液压工厂参观