Python可视化之matplotlib模块浅析前言1

这是我参与11月更文挑战的第8天,活动详情查看:2021最后一次更文挑战

前言

互联网时代下,在网络中每天都会产生很多数据,通过对数据分析之后,如何更好的诠释数据背后的意义,我们需要对数据进行可视化展示。

在数据可视化中,Python 也支持第三模块

  • matplotlib 模块:Python使用最多的可视化库
  • seaborn 模块:基于matplotlib的图形可视化
  • pycharts 模块:用于生成Echarts 图表的类库

image.png

本期,我们对matplotlib模块提供的图形方法进行学习,Let's go~

1. matplotlib 模块概述

matplotlib 模块是第三方开源的,由John Hunter团队研发而成,NumFOCUS 的赞助项目。

matplotlib 模块是用于Python创建静态、动态和交互式可视化综合性的库。

image.png

  • matplotlib 模块特点

    • 易创建图表如出版质量图、交互式数据可放大、缩小
    • 定制化图表可完全控制线条样式、导入并嵌入多种文件格式
    • 扩展性高,可以与第三方模块进行兼容
    • matplotlib 模块资料手册信息丰富,可快速上手
  • matplotlib 模块获取

    matplotlib 是Python主流第三方可视化模块,我们需要使用pip进行下载

    pip install matplotlib
    复制代码
  • matplotlib 模块使用

    在matplotlib模块中,pyplot类是最常用的。

    • 方式一:
    from matplotlib import pyplot
    复制代码
    • 方式二:
    import matplotlib.pyplot as plt
    复制代码

🔔 重要说明

  1. matplotlib 模块官方资料
  2. 查看matplotlib内部代码说明

image.png

2. matplotlib.pyplot 相关方法

matplotlib.pyplot 模块是我们画图标最常用的模块之一

方法 作用
pyplot.title(name) 图表的标题
pyplot.xlabel(name) 图表的X轴名字
pyplot.ylabel(name) 图表的y轴名字
pyplot.show() 打印出图表
pyplot.plot(xvalue,yvalue) 绘制折线图表
pyplot.bar(xvalue,yvalue) 绘制柱状图表
pyplot.axis(data) 获取或设置一些轴属性的便捷方法
pyplot.scatter(data) 绘制散点图
pyplot.subplot(data) 绘制子图
pyplot.grid(boolean) 显示网状,默认为False
pyplot.text() 对文本进行处理
pyplot.pie(data) 绘制饼图
pyplot.boxplot(data) 绘制箱形图
pyplot.hist(data) 绘制直方图

3. matplotlib.pyplot 图表展示

  • 绘制折线图

    • 使用pyplot..plot()方法
    from matplotlib import pyplot
    
    # 设置图表字体格式
    pyplot.rcParams["font.sans-serif"]=['SimHei']
    pyplot.rcParams["axes.unicode_minus"]=False
    
    pyplot.plot([1,2,3,4,5,6],[45,20,19,56,35,69])
    
    pyplot.title("data analyze")
    pyplot.xlabel("data")
    pyplot.ylabel("sum")
    
    pyplot.show()
    复制代码

    image.png

  • 绘制柱状图

    • 使用pyplot..bar()方法
    • 再次使用上面的数据,可以看到直方图
    pyplot.bar([1,2,3,4,5,6],[45,20,19,56,35,69])
    复制代码

    image.png

  • 绘制饼图

    • 使用pyplot.pie()方法绘制饼图
    • 同时使用pyplot.axis方法设置每一个分区间隔
    from matplotlib import pyplot
    labels = ["windows","MAC","ios","Android","other"]
    sizes = [50,10,5,15,20]
    explode = [0,0.1,0,0,0]
    pyplot.pie(sizes,explode=explode,labels=labels,autopct='%1.1f%%',shadow=False,startangle=90)
    pyplot.axis("equal")
    
    pyplot.title("data analyze")
    pyplot.show()
    复制代码

    image.png

  • 绘制散点图

    • 使用pyplot.scatter(x,y)绘制散点图
    import numpy as np
    from matplotlib import pyplot
    
    data = {"a":np.arange(50),"c":np.random.randint(0,50,50),"d":np.random.randn(50)}
    
    data['b'] = data['a']+10*np.random.randn(50)
    data['d'] = np.abs(data['d'])*100
    
    pyplot.scatter("a","b",c='c',s='d',data=data)
    
    pyplot.title("data analyze")
    pyplot.xlabel("元素 a")
    pyplot.ylabel("元素 b")
    
    pyplot.show()
    复制代码

    image.png

总结

本期,我们对matplotlib.pyplot 模块绘制相关如折线、柱状、散点、圆饼图表进行简单地学习

在学习的过程中,我们发现pyplot 模块简单上手,发现在展示之前我们所有的数据是关键点

以上是本期内容,欢迎大佬们点赞评论,我们下期见~