Matplotlib入门

#折线图用来表示数据的变化

plt.plot(x,y)

#直方图用来统计连续性数据 无间隔

plt.hist(data数组,组数)

#条形图用来统计离散的数组 并且反映其变化 有间隔

plt.bar(x,y,width = 0.3)
plt.barh(y,x,height = 0.3)

#散点图用来xy轴之间的联系 趋势

 plt.scatter(x,y)

#导入pyplot
from matplotlib import pyplot as plt
#限制大小和像素
plt.figure(figsize = (20,8),dpi = 80)#数据集中对应的x坐标 是一个迭代对象
x = rnage(2,26,2)#共12个数据
#数据集中对应的y坐标 是一个迭代对象
y = [15,13,14.5,17,20,25,26,26,24,22,18,15]#共12个数据
#x和y组成了12个数据点#绘制x轴的刻度 
plt.xticks( range(2,25,1) )
#plt.xticks(x)
#plt.xticks( [i/2 for i in range(2,49)] )#绘制y轴的刻度
plt.yticks( range(min(y),max(y)+1 )#传入x y 通过plot绘制折线图
plt.plot(x,y)#保存
plt.savefig("./t1.png")#展示图形
plt.show()

 

 

from matplotlib import pyplot as plt
import random#设置字体参数
font = {'family' : 'YouYuan','weight' : 'bold','size' : 12
}#将字体参数应用到全局
plt.rc('font',**font)#设置数据集的x y坐标
x = range(0,120)#共120个数(分钟)
y = [ random.randint(20,35) for i in range(120) ]#设置图形大小
plt.figure( figsize = (20,8),dpi = 60 )#设置刻度
#分别表示开始的位置和结束的位置(不包括)和步长
_x = x[::10]#表示每10分钟为1个刻度
_xtick_labels = ["现在是{}时{}分".format(i//60 + 10,i%60) for i in _x]
#刻度集合 刻度值 旋转程度
plt.xticks(_x,_xtick_labels,rotation = -90)#绘制图片
plt.plot(x,y)#绘制网格 设置透明度
plt.grid(alpha=0.3)#设置标签
plt.xlabel("时间")
plt.ylabel("温度 单位(C)",labelpad = 20)#偏移
plt.tile("10点到12嗲每分钟的气温变化情况")#展示图片
plt.show()

 

#coding = utf-8
from matplotlib import pyplot as plt
from matplotlib import font_manager
font = {'family':'YouYuan''weight':'bold''size':12
}
plt.rc('font',**font)#give the data
y_1 = [1,0,1,1,2,4,3,2,3,4,4,5,6,5,4,3,3,1,1,1]
y_2 = [1,0,3,1,2,2,3,3,2,1,2,1,1,1,1,1,1,1,1,1]
x = range(11,31) #set the size of the graph
plt.figure(figsize=(20,8),dpi=80)#set the scale of axis x and axis y
_x = x
_xticks_labels = ["{}岁".format(i) for i in _x]
plt.xticks(_x,_xticks_labels)#data from(data numbers) format
plt.yticks(range(0,7))#draw the picture respectively
plt.plot(x,y_1,label = "自己",color = "orange",linestyle = ":")
plt.plot(x,y_2,label = "同桌",color = "cyan",linestyle = "--")#set the grid and the tansparency
plt.grid(alpha = 0.3,color = "black",linestyle = "dotted")#color can be #00ff00#put the position of the legend
plt.legend(loc="upper left")#draw the picture
plt.show()

 

 

 

#coding = utf-8
from matplotlib import pyplot as plt
from matplotlib import font_manager
font = {'family':'YouYuan','weight':'bold','size' :10
}
plt.rc("font",**font)#give the data
x_3 = range(1,29)
y_3 = [11,17,16,11,12,11,12,6,6,7,8,9,12,15,14,17,18,21,16,17,20,14,15,15,19,21,22,23]#28 numbers
x_10 = range(51,82)
y_10=[26,26,28,19,21,17,16,19,18,20,20,19,22,23,17,20,21,20,22,15,11,15,5,13,17,10,11,13,12,
13,6] #31 numbersplt.figure(figsize=(20,8),dpi=80)#in order to put the seperate x together put the data to 2 sides
_x = list(x_3)+list(x_10)#use scatter to draw the picture
plt.scatter(x_3,y_3,label = "March")
plt.scatter(x_10,y_10,label = "Octomber")#give the scale of axis x
_xtick_labels = ["3月{}日".format(i) for i in x_3]
_xtick_labels += ["10月{}日".format(i) for i in x_10]
plt.xticks(_x[::3],_xtick_labels[::3],rotation = 45)#every 3 days is one scale#add the position of legend
plt.legend(loc="upper right")
#add the descreptive information
plt.xlabel("时间")
plt.ylabel("温度")
#add grid
plt.grid(alpha = 0.4)
#show the picture
plt.show()

 

 

 

from matplotlib import pyplot as plt
from matplotlib import font_manager
font ={'family':'YouYuan','weight':'bold','size':10
}
plt.rc("font",**font)
#You can make it more tidy by adding \n to the same position
a = ["电影1\n111","电影2","电影3\n2","电影3\n34","电影5\n4","电影6\n4","电影6\n66667","电影8","电影9","电影1\n0","电影1\n1","电影1\n2","电影1\n3","电影1\n4","电影1\n5","电影1\n6","电影1\n7","电影1\n8"]
b = [56.01,26.94,17.53,16.49,15.45,12.96,11.8,41.21,32.34,22.23,77.7,88.8,12,14,16,1,19,33]
plt.figure(figsize=(20,15),dpi=80)#draw the bar picture
#if You want to change the pisition of x and y just do the tips 1 and 2
plt.bar(a,b,width = 0.3)
#1. plt.barh(a,b,height = 0.3)#fix the scale of x
_xtick_labels = [i for i in a]
plt.xticks(a,_xtick_labels,rotation = 60)
#2.plt.yticks(a,_xtick_labels,rotation = 60)plt.show()

 

 

#coding = utf-8
from matplotlib import pyplot as plt
from matplotlib import font_manager
font = {'family':'YouYuan','weight':'bold','size':10
}#give the data axis x and y
a = ["猩球崛起3:终极之战","敦刻尔克","蜘蛛侠:英雄归来","战狼2"]
b_14 = [2358,399,2358,362]
b_15 = [12357,156,2045,168]
b_16 = [15746,312,4497,319]#set the size of the graphic
plt.figure(figsize=(20,8),dpi=80)#change the pos of the scale
x_14 = range(len(a))
x_15 = [i+bar_width for i in x_14]#clost to just right
x_16 = [i+bar_width for i in x_15]#trans the data collections into 
plt.bar(x_14,b_14,width = bar_width,label="14日")#first one is scale
plt.bar(x_15,b_15,width = bar_width,label="15日")
plt.bar(x_16,b_16,width = bar_width,label="16日")plt.legend(loc="upper left")#give the scale parameters
plt.xticks(x_15,a)plt.show()

 

 

 

from matplotlib import pyplot as plt
from matplotlib import font_manager
import random
font = {'family':'YouYuan','weight':'bold','size':1
}
random.seed(0)
a = [random.randint(70,154) for i in range(120)]
a.append(160)
a.append(60)plt.figure(figsize = (20,80),dpi = 80)#calculation 1.组数==极差/组距 2.组距==极差/组数
#1.
#fix the num_bins then calculate the distance
#tip: the (max(a)-min(a))/num_bins must == 0
num_bins=20
d = (max(a)-min(a))//num_bins
#draw the picture 
plt.hist(a,num_bins)#原始数组a和分组#fix the scale of axis a
plt.xticks(range(min(a),max(a)+d,d))plt.grid()
plt.show()

 

 

import random
from matplotlib import pyplot as plt
from matplotlib import font_manager
font = {'family':'YouYuan','weight':'bold','size':1
}
random.seed(0)
a = [random.randint(70,154) for i in range(120)]
a.append(160)
a.append(60)
plt.figure(figsize = (20,80),dpi = 80)
#计算组数 组数==极差/组距  
#将hist中第2个参数的值写为plt.xticks中的值 然后组距可以随便调
#其实就是一个刻度就是一组 然后用d的值分出来所需要的组数
d = 5
plt.hist(a,range(min(a),max(a)+d,d))#原始数组a和分组
#设置x轴的刻度
plt.xticks(range(min(a),max(a)+d,d))#刚好包含max(a)
#画网格
plt.grid()
plt.show()

 

#coding=UTF-8
from matplotlib import pyplot as plt
from matplotlib import font_manager
#这是统计过的所以用bar条形图 不连在一起
#没有统计过用hist直方图 连在一起
interval = [0,5,10,15,20,25,30,35,40,45,60,90]
width = [5,5,5,5,5,5,5,5,5,15,30,60]
quantity = [836,2737,3723,3926,3596,1438,3273,642,824,613,215,47]
plt.bar(range(len(quantity)),quantity,width=1)#width为1可以让条形图连在一起
#设置x轴的刻度
_x = [i*0.5 for i in range(len(interval)+1)]# 分成了多少份 
_xtick_labels = interval+[150] #额外加上一个元素
plt.xticks(_x,_xtick_labels)
plt.grid(alpha = 0.4)
plt.show()

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/44350.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

重命名文件的方法有哪些?重命名文件的工具有哪些?

在日常的计算机使用过程中,重命名文件是一项常见但至关重要的任务。无论是为了更好地组织文件、修复命名错误,还是简化文件管理流程,掌握正确的重命名方法和工具都能显著提升效率。 本文将探讨多种重命名文件的方法,同时介绍几款高…

解决Invalid or unsupported by client SCRAM mechanisms(dbeaver)

在用工具(dbeaver)链接Opengauss数据库的时候,报出标题的错误。原因为驱动不正确。 驱动下载地址:https://opengauss.org/zh/download/ 下载完的包 ,解压后,里面应该有两个jar 包,使用postgresql.jar dbe…

国产大模型第一梯队玩家,为什么pick了CPU?

AI一天,人间一年。 现在不论是大模型本身,亦或是AI应用的更新速度简直令人直呼跟不上—— Sora、Suno、Udio、Luma……重磅应用一个接一个问世。 也正如来自InfoQ的调查数据显示的那般,虽然AIGC目前还处于起步阶段,但市场规模已…

qmt量化交易策略小白学习笔记第55期【qmt编程之期权数据--获取历史期权列表】

qmt编程之获取期权数据 qmt更加详细的教程方法,会持续慢慢梳理。 也可找寻博主的历史文章,搜索关键词查看解决方案 ! 感谢关注,咨询免费开通量化回测与获取实盘权限,欢迎和博主联系! 获取历史期权列表 …

教师管理小程序的设计

管理员账户功能包括:系统首页,个人中心,教师管理,个人认证管理,课程信息管理,课堂记录管理,课堂统计管理,留言板管理 微信端账号功能包括:系统首页,课程信息…

Postman使用教程【项目实战】

目录 引言软件下载及安装项目开发流程1. 创建项目2. 创建集合(理解为:功能模块)3. 设置环境变量,4. 创建请求5. 测试脚本6. 响应分析7. 共享与协作 结语 引言 Postman 是一款功能强大的 API 开发工具,它可以帮助开发者测试、开发和调试 API。…

java项目总结数据库

1.什么是数据库 用于存储和管理数据的仓库 2.数据库的特点 1.持久化存储数据。确实数据库就是一个文件系统。 2.便于存储和管理数据 3.使用统一的方式操作数据库 --SQL 3.MqSql服务启动 4.登录和退出 这里的ip值IP地址 5.客户端与服务器关系 6.目录结构 7.SQL 1.什么是SQL&…

节点流与处理流:深入解析Java中的IO流

节点流与处理流:深入解析Java中的IO流 1、节点流(Node Stream)1.1 定义1.2 好处1.3 示例 2、处理流(Processing Stream)2.1 定义2.2 好处2.3 创建特征2.4 示例 3、总结 💖The Begin💖点点关注&…

JavaWeb__正则表达式

目录 1. 正则表达式简介2. 正则表达式体验2.1 验证2.2 匹配2.3 替换2.4 全文查找2.5 忽略大小写2.6 元字符使用2.7 字符集合的使用2.8 常用正则表达式 1. 正则表达式简介 正则表达式是描述字符模式的对象。正则表达式用于对字符串模式匹配及检索替换,是对字符串执行…

如何在Vue中实现拖拽功能?

Vue.js是一款流行的JavaScript框架,用于构建用户界面。其中一个常见的需求是在Vue中实现拖拽功能,让用户可以通过拖拽元素来进行交互。今天,我们就来学习如何在Vue中实现这一功能。 首先,我们需要明白拖拽功能的基本原理&#xf…

Java 修改微信公众号后台服务器地址URL后,微信公众平台客服功能接收不到用户发送的消息的解决办法

解决办法: 检查一下微信回调URL是否转发了客服消息。 /*** 处理具体的回调信息*/ PostMapping("/callback") public void callback(RequestParam(name "signature", required false) String signature,RequestParam(name "timestamp&q…

centos系统查找mysql的配置文件位置

执行命令查找mysql的安装目录: which mysql cd进入mysql的安装目录 cd /usr/bin 查找配置文件位置 ./mysql --help | grep "my.cnf" 定位配置文件 cd /etc 查找命令还可以用find命令 find / -name "my.cnf"

iOS UITableView自带滑动手势和父视图添加滑动手势冲突响应机制探索

场景 我们有时候会遇到这样的一个交互场景:我们有一个UITableView 放在一个弹窗中,这个弹窗可以通过滑动进行展示和消失(跟手滑动的方式),然后这个UITableView放在弹窗中,并且可以滚动,展示一些…

用微信服务号支付门诊缴费

时间上午10刚过,医院里计价收费处排起了长龙,放眼望去,左边的窗口六条队。右边在原来发药的位置也开辟了收费窗口,数了一下有四条队。一共十条排队付费的长龙,每一条队伍的人数不下20人,也即超过200人在排队…

百度智能云将大模型引入网络故障定位的智能运维实践

物理网络中,某个设备发生故障,可能会引起一系列指标异常的告警。如何在短时间内从这些告警信息中找到真正的故障原因,犹如大海捞针,对于运维团队是一件很有挑战的事情。 在长期的物理网络运维工作建设中,百度智能云通…

【前端从入门到精通:第十一课: JS基本语法】

独闯JavaScript 了解JavaScript 为什么学习JavaScript JavaScript 是 web 开发者必学的三种语言之一: HTML 定义网页的内容 CSS 规定网页的布局 JavaScript 对网页行为进行编程 我们学习 JavaScript,以及 JavaScript 如何与 HTML 和 CSS 协同工作的知…

数字力量助西部职教全面提升——唯众品牌大数据、人工智能系列产品中标甘肃庆阳职院数字经济人才培养基地!

近日,唯众品牌凭借在大数据和人工智能领域深耕多年的技术积累和卓越产品,成功中标庆阳职业技术学院全国一体化算力网络国家枢纽节点数字经济人才培养基地项目,标志着唯众在助力西部职业教育与数字经济融合发展的新征程上迈出了坚实的一步。 …

Data Guard高级玩法:failover备库后,通过闪回恢复DG备库

作者介绍:老苏,10余年DBA工作运维经验,擅长Oracle、MySQL、PG、Mongodb数据库运维(如安装迁移,性能优化、故障应急处理等) 公众号:老苏畅谈运维 欢迎关注本人公众号,更多精彩与您分享…

怎样将aac转换mp3格式?推荐四个aac转MP3的方法

怎样将aac转换mp3格式?当需要将aac格式音频转换为MP3格式时,有几种方法可以轻松实现这一目标。MP3是一种广泛支持的音频格式,几乎所有设备和平台都能播放MP3文件,包括各种音乐播放器、手机、平板电脑和汽车音响系统。而且它也提供…

MySQL:视图、用户管理、C/C++/图形化界面链接访问数据库、网页逻辑

文章目录 1.视图1.1 视图的基本使用1.2 视图的基本规则 2.用户管理2.1 创建、删除、修改用户2.2 数据库权限 3.C/C/图形化界面链接访问数据库3.1 准备工作及常用接口介绍3.2 图形化界面访问MySQL 4.用户逻辑(注册&&登录) 1.视图 视图是一个虚拟表,其内容由…