当前位置:   article > 正文

【数据可视化】Matplotlib数据可视化

matplotlib数据可视化

        欢迎来到老胡的算法解题思路,本文章主要使用的语言为python,基于这一篇文章,我将为你介绍Motplotlib数据可视化,喜欢的朋友可以关注一下,下次更新不迷路!

目录

前言

一、安装和导入

1.1安装Matplotlib库

1.2导入Matplotlib库

二、绘图基础必备

2.1figure对象创建画布

2.2 subplot()函数划分子图

2.3 添加标题

2.4 tight_layout()函数调整子图

三、绘制散点图

3.1scatter()函数

3.2、其他常用函数

 四、折线图和柱形图

4.1plot()函数

4.2 bar()函数

总结


前言

        Matplotlib 是一个python的 2D绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形,可以通过它来绘制直方图,柱形图,折线图,散点图,气泡图,三维图等2D图。


一、安装和导入

1.1安装Matplotlib库

pip install matplotlib

1.2导入Matplotlib库

import matplotlib.pyplot as test1

二、绘图基础必备

2.1figure对象创建画布

对应代码:

figurenumfigsizedpifacecoloredgecolorframeon)

num:图形编号或名称

figsize:绘图对象的宽和高

dpi:绘图对象的分辨率,默认80

facecolor:背景颜色

edgecolor:边框颜色

frameon:是否显示边框

演示代码:

  1. import matplotlib.pyplot as test1
  2. # 创建画布
  3. test1.figure(num="商品房销售数据表",figsize=(3,2),facecolor="r")
  4. # 绘制空白图形
  5. test1.plot()
  6. # 显示
  7. test1.show()

实现结果:

2.2 subplot()函数划分子图

对应代码:

subplot(行数,列数,子图序号)

演示代码:

  1. import matplotlib.pyplot as test1
  2. # 创建画布
  3. test1.figure(num="商品房销售数据表")
  4. # 当subplot()函数中三个参数都小于10,逗号可以省略
  5. test1.subplot(2,2,1)
  6. test1.subplot(2,2,2)
  7. test1.subplot(2,2,3)
  8. test1.subplot(2,2,4)
  9. # 显示
  10. test1.show()

实验结果:

2.3 添加标题

对应代码:

  1. #添加全局标题 x:标题位置x坐标 y:标题位置y坐标 color:标题颜色 backgroundcolor:标题背景颜色
  2. #fontsize:标题字体大小 fontweight:字体粗细 fonstyle:设置字体类型
  3. #horizontalalignment:标题水平对其方式 verticalalignment:标题垂直对其方式
  4. suptitle(标题名)
  5. #添加子标题 loc:标题位置 rotation:标题文字旋转角度 color:标题颜色 fontsize:标题字体大小
  6. # fontweight:字体粗细 fonstyle:设置字体类型 fontdice:设置字典参数
  7. #horizontalalignment:标题水平对其方式 verticalalignment:标题垂直对其方式
  8. title(标题名)

演示代码:

  1. import matplotlib.pyplot as test1
  2. # 解决中文输出不了的问题
  3. test1.rcParams['font.sans-serif'] = ['SimHei']
  4. test1.figure("商品房销售数据表")
  5. # 当subplot()函数中三个参数都小于10,逗号可以省略
  6. test1.subplot(2,2,1)
  7. test1.title("子表1")
  8. test1.subplot(2,2,2)
  9. test1.title("子表2")
  10. test1.subplot(2,2,3)
  11. test1.title("子表3")
  12. test1.subplot(2,2,4)
  13. test1.title("子表4")
  14. # 显示
  15. test1.suptitle("全局标题",color="r")
  16. test1.show()

实验结果:

2.4 tight_layout()函数调整子图

对应代码:

tight_layout(rect=[left,bottom,right,top])

演示代码:

  1. import matplotlib.pyplot as test1
  2. # 解决中文输出不了的问题
  3. test1.rcParams['font.sans-serif'] = ['SimHei']
  4. test1.figure("商品房销售数据表")
  5. # 当subplot()函数中三个参数都小于10,逗号可以省略
  6. test1.subplot(2,2,1)
  7. test1.title("子表1")
  8. test1.subplot(2,2,2)
  9. test1.title("子表2")
  10. test1.subplot(2,2,3)
  11. test1.title("子表3")
  12. test1.subplot(2,2,4)
  13. test1.title("子表4")
  14. # 显示
  15. test1.suptitle("全局标题",color="r")
  16. test1.tight_layout(rect=[0,0,1,0.9])
  17. test1.show()

实验结果:

三、绘制散点图

3.1scatter()函数

对应代码:

  1. #x:数据点的x坐标 y:数据点的y坐标 scale:数据点大小 color:数据点颜色 marker:数据点样式
  2. #laber:图例文字
  3. scatter(x,y,scale,color,marker,laber)

演示代码:

  1. import matplotlib.pyplot as test1
  2. import numpy as num
  3. #设置字体,解决中文输出不了的问题
  4. test1.rcParams['font.sans-serif'] = ['SimHei']
  5. n = 500
  6. x=num.random.normal(0,1,n)
  7. y=num.random.normal(0,1,n)
  8. #k表示黑色
  9. test1.scatter(x,y,color="k")
  10. test1.title("商品房销售数据")
  11. test1.show()

实验结果:

3.2、其他常用函数

对应代码:

  1. #x:文字x坐标 y:文字y坐标 s:显示的文字 fontsize:文字大小 color:文字颜色
  2. #添加文字
  3. text(x,y,s,fontsize,color)
  4. #正常显示负号
  5. rcParams["axes.unicode_minus"]=False
  6. #设置x轴标签
  7. xlabel(x,y,s,fontsize,color)
  8. #设置y轴标签
  9. ylabel(x,y,s,fontsize,color)
  10. #设置x轴坐标范围
  11. xlim(xmin,xmax)
  12. #设置y轴坐标范围
  13. ylim(ymin,ymax)
  14. #设置刻度文字符号
  15. tick_params(labersize)

演示代码:

  1. import matplotlib.pyplot as test1
  2. import numpy as num
  3. #设置字体,解决中文输出不了的问题
  4. test1.rcParams['font.sans-serif'] = ['SimHei']
  5. # 设置正常显示负号
  6. test1.rcParams["axes.unicode_minus"]=False
  7. x=num.array([137.97,104.50,100,124.32,79.20,99,124,114,106.69,138.05,53.75,46.91,68,63.02,81.26,82.61])
  8. y=num.array([145,110,93,116,65.32,104,118,91,62,133,51,45,78.50,69.65,75.69,95.30])
  9. #绘制数据点
  10. test1.scatter(x,y,color="r")
  11. test1.xlim(0,200)
  12. test1.ylim(0,200)
  13. test1.title("商品房销售数据",fontsize=16,color="b")
  14. test1.xlabel("面积(平方米)",fontsize=16)
  15. test1.ylabel("价格(万元)",fontsize=16)
  16. test1.show()

实验结果:

 四、折线图和柱形图

4.1plot()函数

对应代码:

  1. #x:数据点的x坐标 y:数据点的y坐标 color:数据点颜色 marker:数据点样式 label:图例文字
  2. #linewidth:折现的宽度 markersize:数据点的大小
  3. plot(x,y,color,marker,label,linewidth,markersize)

演示代码:

  1. import matplotlib.pyplot as test1
  2. import numpy as num
  3. #设置字体,解决中文输出不了的问题
  4. test1.rcParams['font.sans-serif'] = ['SimHei']
  5. # 设置正常显示负号
  6. test1.rcParams["axes.unicode_minus"]=False
  7. n=50
  8. y1 = num.random.randint(10,30,n)
  9. y2 = num.random.randint(30,40,n)
  10. #绘制数据点
  11. test1.plot(y1,color="r")
  12. test1.plot(y2,color="r")
  13. test1.xlim(0,50)
  14. test1.ylim(0,50)
  15. test1.show()

实验结果:

4.2 bar()函数

对应代码

  1. #left:x坐标 height:高度 width:每条数据宽度 facecolor:条形颜色 edgecolor:条形边框颜色
  2. #label:图例文字
  3. bar(left,height,width,facecolor,edgecolor,label)

演示代码:

  1. import matplotlib.pyplot as test1
  2. import numpy as num
  3. #设置字体,解决中文输出不了的问题
  4. test1.rcParams['font.sans-serif'] = ['SimHei']
  5. # 设置正常显示负号
  6. test1.rcParams["axes.unicode_minus"]=False
  7. n=50
  8. y1 = num.random.randint(10,30,n)
  9. #绘制数据点
  10. test1.bar(range(len(y1)),y1,0.9,facecolor="b",edgecolor="r")
  11. test1.xlim(0,50)
  12. test1.ylim(0,50)
  13. test1.show()

实验结果:


总结

        Matplotlib数据可视化是python的典型库,在绘图领域有着方便的绘表功能,可以让你方便的设计二维和三维数据,也提供了强大的绘表辅助功能,在数据可视化和数据分析中具有重大的地位。        

matplotlib数据可视化还有很多没有总结到的,总结不到位的后续补充

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/秋刀鱼在做梦/article/detail/963777
推荐阅读
相关标签
  

闽ICP备14008679号