首页 > 其他分享 >matplotlib数据可视化

matplotlib数据可视化

时间:2024-01-23 19:57:03浏览次数:26  
标签:plt 15 pt matplotlib 可视化 np fontsize 数据

Matplotlib数据可视化基础

一、绘制基本图形

1、绘制折线图

import numpy as np
import matplotlib.pyplot as plt
#创建数组x
x = np.arange(10)
np.random.seed(500)
#创建数组y
y = np.random.randint(20,size=(10,))
plt.plot(x,y,'b-')
plt.xticks(fontsize = 15)
plt.yticks(fontsize = 15)
plt.show()

2、线条属性的设置

颜色设置:

b:蓝色

g:绿色

r:红色

.......

线条设置:

‘-’:实线

‘--’:短画虚线

‘-.’:点画线

‘:’:点虚线

3、图标题、坐标轴标题和坐标轴范围设置

#为了显示中文,指定默认字体
plt.rcParams['font.sans-serif'] = ['SimHei']
#坐标轴标题
plt.title
plt.xlabel
plt.ylabel

4、绘制多图与图例的设置

#第一条线的参数
plo1, = plt.plot(x,y1,'r--',marker='o',linewidth=1)
#第二条线的参数
plo2, = plt.plot(x,y2,'g-',marker='+',linewidth=2)
#loc表示图例放置的位置,可以使用位置字符串,也可以使用位置代码
plt.legend((plo1,plo2),('开盘价','收盘价'),loc=4,fontsize=15,numpoints=3)
#numpoints参数设置二维线状图像显示在图例上的点的数量。
请注意:在上名的前两行代码左边表达式均有一个逗号。
这是因为plot返回的不是二维折线对象本身,而是产生的一个列表,
加上一个逗号,可以把二维折线对象给分解出来。

5、散点图

可以利用scatter来绘制散点图
import numpy as np
import matplotlib.pyplot as plt
#读取数据
a1 = np.loadtxt('array1.txt',delimiter=',',unpack=True,usecols=(4,),dtype=np.float32,skiprows=1)
x = np.arange(len(a1))
#设置散点图,marker值有点,o和*
plt.scatter(x,a1,c='r',marker='o')
plt.rcParams['font.sans-serif'] = ['SimHei']

6、直方图

直方图是一种统计报告图,是数值数据分布的图形表示,由一系列条形组成。构建直方图的第一步是将数据的统计范围分成多个区段,然后计算分别有多少个数据落在相应的区段内,再根据每个区段的统计数据个数来绘制条形的高度。

import numpy as np
import matplotlib.pyplot as plt
a1 = np.loadtxt('array2.txt',delimiter=',',unpack=True,usecols=(4,),dtype=np.int_,skiprows=1)
bins = np.arange(5,15,0.2)
plt.hist(a1,bins,rwidth=0.8)

7、饼图

matplotlib.pyplot模块中的函数pie()用于绘制饼图。
import matplotlib.pyplot as plt
persons = [33,65,30,30]
majors = ['信息管理与信息系统','应用统计','经济统计','数据科学与大数据技术']
color = ['c','r','b','g']
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.figure(figsize=(7.5,5))#设置图像大小
plt.pie(persons,labels=majors,colors=color,startangle=90,shadow=True,explode=(0.1,0,0.1,0),autopct='%.1f%%',textprops={'fontsize':15})
plt.title('各专业新生人数分布',fontsize=18)
plt.show()

1706005072038

二、绘制多轴图

1、用subplot()函数绘制多轴图

#创建图像
pt.figure(figsize=(11,7))
#创建子图
ax1 = pt.subplot(2,2,1)
ax2 = pt.subplot(2,2,2)
ax3 = pt.subplot(2,2,3)
ax4 = pt.subplot(2,2,4)

2、多轴图的轴展开与遍历

定义好多轴的行数和列数后,通过axis.ravel()方法展开轴,可以对每个依次遍历来操作各个子图。
import matplotlib.pyplot as pt
a1,a2,a3,a4 = np.loadtxt('array2.txt',delimiter=',',usecols=(1,2,3,4),unpack=True,skiprows=1)
x = np.arange(len(a1))
pt.rcParams['font.sans-serif'] = ['SimHei']
a = [a1,a2,a3,a4]
colors = ['red','green','black','blue']
linestyles= ['solid','dashed','dashdot','dotted']
labels = ["开盘价",'收盘价','最高价','最低价']
fig,axes = pt.subplots(ncols=2,nrows=2)
#创建图像
pt.figure(figsize=(11,7))
for ax,price,color,linestyle,label in zip(axes.ravel(),a,colors,linestyles,labels):
    ax.plot(x,price,color=color,linestyle = linestyle)
    pt.sca(ax)
    pt.xticks(fontsize=15)
    pt.yticks(fontsize=15)
    pt.title(label,fontsize=12)
    pt.xlabel("时间顺序",fontsize=15)
    pt.ylabel(label,fontsize=15)
pt.subplots_adjust(wspace=0.2,hspace=0.5)
pt.show()

三、坐标轴的刻度标签

默认情况下,图形坐标轴上的刻度文字标签可能不能满足用户的需求,可以通过设置来改变刻度上的标签文本。

可以使用week、calendar等作为横坐标

以下是可以使用matplotlib绘制的图形:

  • 坐标轴的主次刻度、网格设置
  • 移动坐标轴
  • 文字说明和注释
  • 显示图片
  • 日期作为横坐标
  • 绘制横线与竖线作为辅助线
  • 箱线图
  • 小提琴图
  • 热力图
  • 填充图
  • 等高线图
  • 绘制三维图表
  • 三维折线图
  • 三维曲面图

标签:plt,15,pt,matplotlib,可视化,np,fontsize,数据
From: https://www.cnblogs.com/wjx-2005-07-01/p/17983285

相关文章

  • JeecgBoot集成TiDB,打造高效可靠的数据存储解决方案
    TiDB简介TiDB是PingCAP公司自主设计、研发的开源分布式关系型数据库,同时支持在线事务处理与在线分析处理(HybridTransactionalandAnalyticalProcessing,HTAP)的融合型分布式数据库产品,具备水平扩容或者缩容、金融级高可用、实时HTAP、云原生的分布式数据库、兼容MySQL5......
  • linux CentOS MobaXterm 通过X11 Forwarding 在本地开启图形可视化窗口
    第一步操作系统安装图形界面X11Forwardingdnfinstallxorg-x11-xauthxorg-x11-fonts-*xorg-x11-font-utilsxorg-x11-fonts-Type1xclock1第二步修改参数,启用X11Forwardingvim/etc/ssh/sshd_config1修改参数X11Forwardingyes和X11UseLocalhostno#AllowAgentForwarding......
  • 医院绩效管理系统,实现医院绩效管理数据采集的自动化和绩效评估数字化
    医院绩效管理系统以国家医院绩效管理考核政策法规为依据,结合医院管理实践,以经济管理指标为核心,医疗质量、安全、效率、效益管理为重点,特别强调持续改进(PDCA)管理理念。实现医院绩效管理数据采集的自动化和绩效评估数字化,使医院的绩效评价工作更加公平、公正和规范化;通过实时数据统计......
  • SpringBoot可视化接口开发工具magic-api
    magic-api简介magic-api是一个基于Java的接口快速开发框架,编写接口将通过magic-api提供的UI界面完成,自动映射为HTTP接口,无需定义Controller、Service、Dao、Mapper、XML、VO等Java对象。在SpringBoot中使用1、添加magic-api相关依赖<!--接口快速开发框架 magic-api--><depen......
  • TSINGSEE车辆检测算法及车辆结构化数据在车辆智能管控中的应用
    AI边缘计算智能分析网关V4车辆检测、车牌识别算法融合了ORC识别、云计算、计算机视觉、大数据检索等多种技术,可将运动中的机动车牌照从复杂的背景中提取并识别出来,通过车牌提取、图像预处理、特征提取、车牌字符识别等流程,识别出车辆牌号、颜色等信息。AI智能分析网关V4内置近40......
  • 如何利用OSS实现大量数据导出
    业务场景在业务进行数据分析时,会经常碰到导出数据的场景,而对于数据量较大的导出,使用Excel的方式导出会比较消耗性能,而csv是纯文本文件,但可通过Excel等软件打开,OSS支持文本文件上传,这满足了我们导出数据的需求,所以我们可以使用OSS+csv的方式进行大数据量的文件导出准备内容1.已......
  • 初识数据库
    初识数据库数据库管理系统(DBMS)专注于帮助开发者解决数据存储的问题,这样开发者就可以把主要精力放在实现业务功能上了。业内有很多的的数据库管理系统产品,例如:MySQL,原来是sun公司,后来被甲骨文收购。现在互联网企业几乎都在使用。【免费+收费】Oracle,甲骨文。收费,一般国企、......
  • 免费节假日api接口使用教程-聚合数据
    免费节假日api接口使用教程-聚合数据......
  • 数据库缓存策略
    数据库缓存策略以下是数据库与缓存的五种常见策略。1缓存旁路缓存旁路(Cache-Aside)在缓存旁路策略中,数据库缓存位于数据库旁边。当应用程序请求数据时,它会首先检查缓存如果缓存中存在数据(缓存命中),则会直接返回数据如果缓存中没有数据(缓存未命中),则应用程序将查询数据库,然......
  • 玩转数据处理利器:学会使用 YAML 文件轻松处理数据
    霍格沃兹的测试管理班是专门面向测试与质量管理人员的一门课程,通过提升从业人员的团队管理、项目管理、绩效管理、沟通管理等方面的能力,使测试管理人员可以更好的带领团队、项目以及公司获得更快的成长。提供1v1私教指导,BAT级别的测试管理大咖量身打造职业规划。YAML文件处理什......