数据可视化-matplotlib包
pyplot官网教程https://matplotlib.org/users/pyplot_tutorial.html
- #导入matplotlib的pyplot模块
- import matplotlib.pyplot as plt
plot用于绘制线条
- '''
- 第1步:定义x和y坐标轴上的点
- '''
- #x坐标轴上点的数值
- x=[1, 2, 3, 4]
- #y坐标轴上点的数值
- y=[1, 4, 9, 16]
- '''
- 第2步:使用plot绘制线条
- 第1个参数是x的坐标值,第2个参数是y的坐标值
- '''
- plt.plot(x,y)
- '''
- 第3步:显示图形
- '''
- plt.show()
设置线条属性,文档:https://matplotlib.org/api/_as_gen/matplotlib.lines.Line2D.html#matplotlib.lines.Line2D
- '''
- color:线条颜色,值r表示红色(red)
- marker:点的形状,值o表示点为圆圈标记(circle marker)
- linestyle:线条的形状,值dashed表示用虚线连接各点
- '''
- plt.plot(x, y, color='r',marker='o',linestyle='dashed')
- #plt.plot(x, y, 'ro')
- '''
- axis:坐标轴范围
- 语法为axis[xmin, xmax, ymin, ymax],
- 也就是axis[x轴最小值, x轴最大值, y轴最小值, y轴最大值]
- '''
- plt.axis([0, 6, 0, 20])
- plt.show()
如果matplotlib参入的参数只能是列表的话,这对数据处理很不利。
一般,我们传入的是numpy的数组。实际上,所有参入的值内部都会转换为numpy的数组。
- '''
- # arange用于生成一个等差数组,arange([start, ]stop, [step, ]
- 使用见文档:https://docs.scipy.org/doc/numpy/reference/generated/numpy.arange.html
- '''
- import numpy as np
- t = np.arange(0, 5, 0.2)
- t
- '''
- 使用数组同时绘制多个线性
- '''
- #线条1
- x1=y1=t
- '''
- 运算符**,表示幂 - 返回x的y次幂,例如10**20表示10的20次方
- 详细见文档《Python3运算符》:http://www.runoob.com/python3/python3-basic-operators.html
- '''
- #线条2
- x2=x1
- y2=t**2
- #线条3
- x3=x1
- y3=t**3
- #使用plot绘制线条
- linesList=plt.plot(x1, y1,
- x2, y2,
- x3, y3 )
- #用setp方法可以同时设置多个线条的属性
- plt.setp(linesList, color='r')
- plt.show()
- print('返回的数据类型',type(linesList))
- print('数据大小:',len(linesList))
在图上添加文本
- #找到 matplotlib 加载的配置文件路径
- import matplotlib
- matplotlib.matplotlib_fname()
- """设置字体,用于显示中文"""
- plt.rcParams['font.sans-serif']=['FangSong']
- """SimSun 宋体,Microsoft YaHei微软雅黑 YouYuan幼圆 FangSong仿宋"""
- plt.rcParams['font.size']=20
- plt.rcParams['axes.unicode_minus']=False# 负号乱码
- '''
- 第1步:定义x和y坐标轴上的点
- '''
- #x坐标轴上点的数值
- x=[1, 2, 3, 4]
- #y坐标轴上点的数值
- y=[1, 4, 9, 16]
- '''
- 第2步:使用plot绘制线条
- 第1个参数是x的坐标值,第2个参数是y的坐标值
- '''
- plt.plot(x,y)
- '''
- 添加文本
- '''
- #x轴文本
- plt.xlabel('x坐标轴')
- #y轴文本
- plt.ylabel('y坐标轴')
- #标题
- plt.title('标题')
- #添加注释
- '''
- 添加注释:
- 参数名xy:箭头注释中箭头所在位置,
- 参数名xytext:注释文本所在位置,
- arrowprops在xy和xytext之间绘制箭头,
- shrink表示注释点与注释文本之间的图标距离
- '''
- plt.annotate('我是注释', xy=(2,5), xytext=(2, 10),
- arrowprops=dict(facecolor='black', shrink=0.01),
- )
- '''
- 第3步:显示图形
- '''
- plt.show()
多个图绘图
- #创建画板1
- fig = plt.figure(1)
- #第2步:创建画纸(子图)
- '''
- subplot()方法里面传入的三个数字
- 前两个数字代表要生成几行几列的子图矩阵,第三个数字代表选中的子图位置
- subplot(211)生成一个2行1列的子图矩阵,当前是第一个子图
- '''
- #创建画纸,并选择画纸1
- #等价于ax1=fig.add_subplot(211)
- ax1=plt.subplot(2,1,1)
- #在画纸上绘图
- plt.plot([1, 2, 3])
- #选择画纸2
- ax2=plt.subplot(2,1,2)
- #在画纸2上绘图
- plt.plot([4, 5, 6])
- plt.show()
如果没有指明画板figure()和子图subplot,会默认创建一个画板figure(1) 和一个子图subplot(111)
数据可视化-matplotlib包的更多相关文章
- Python数据可视化--matplotlib
抽象化|具体化: 如盒形图 | 现实中的图 功能性|装饰性:没有装饰和渲染 | 包含艺术性美学上的装饰 深度表达|浅度表达:深入层次的研究探索数据 | 易于理解的,直观的表示 多维度|单一维度:数据的 ...
- Python数据可视化matplotlib和seaborn
Python在数据科学中的地位,不仅仅是因为numpy, scipy, pandas, scikit-learn这些高效易用.接口统一的科学计算包,其强大的数据可视化工具也是重要组成部分.在Pytho ...
- python 爬虫与数据可视化--matplotlib模块应用
一.数据分析的目的(利用大数据量数据分析,帮助人们做出战略决策) 二.什么是matplotlib? matplotlib: 最流行的Python底层绘图库,主要做数据可视化图表,名字取材于MATLAB ...
- 数据可视化matplotlib、seaborn、pydotplus
如需转发,请注明出处:小婷儿的python https://www.cnblogs.com/xxtalhr/p/10486560.html 一.数据可视化 data.mat 链接:https://p ...
- 数据可视化——Matplotlib(1)
导入相关模块 import matplotlib.pyplot as plt import pandas as pd import numpy as np 基本图表 散点图:scatter N = 1 ...
- python数据可视化-matplotlib入门(7)-从网络加载数据及数据可视化的小总结
除了从文件加载数据,另一个数据源是互联网,互联网每天产生各种不同的数据,可以用各种各样的方式从互联网加载数据. 一.了解 Web API Web 应用编程接口(API)自动请求网站的特定信息,再对这些 ...
- 数据可视化——matplotlib(2)
导入相关模块 import matplotlib.pyplot as plt import numpy as np import pandas as pd 图表设置 添加X.Y轴标签以及图标标题 a ...
- 数据可视化----matplotlib.pylot
一.输入具体数 plt.plot([3,1,4,5,2]) #自动生成y轴 plt.ylabel("Grade") #y轴的标签 plt.savefig('test1',dpi=6 ...
- <数据可视化>Matplotlib(2D+3D)
1.Matplotlib介绍(2D) Matplotlib 是 Python 2D-绘图领域使用最广泛的套件.它能让使用者很轻松地将数据图形化,并且提供多样化的输出格式. pylab 是 matplo ...
随机推荐
- 设计安全的API-JWT与OAuthor2
最近新开发一个需要给App使用的API项目.开发API肯定会想到JASON Web Token(JWT)和OAuthor2(之前一篇随笔记录过OAuthor2). JWT和OAuthor2的比较 要像 ...
- HTTP Error 500.19 - Internal Server Error 无法读取配置文件
将Code移动文件夹就报以下错误,http error 500.19 - internal server error. 项目文件下.vs=>config=>applicationhost. ...
- 内存取证工具-volatility、foremost
内存取证 1. 内存取证工具volatility 猜测dump文件的profile值 root@kali:~/CTF# volatility -f mem.vmem imageinfo Volatil ...
- django的使用INNODE的方式,排除错误MySQL Strict Mode is not set for database connection 'default'
出现如下错误: 解决办法: DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'mxshop', 'HO ...
- Java_map的key为自定义对象
首先自定义Key对象 import lombok.AllArgsConstructor; import lombok.Getter; import lombok.Setter; import java ...
- Pipe——高性能IO(三)
Pipelines可以替换掉那些丑陋的封装(kludge).变通(workaround)或妥协(compromise)——用一个在框架中设计优雅的专门的解决方案. 敢肯定,下面所覆盖的那些痛点,对于那 ...
- ansible执行带有环境变量的脚本不生效
1背景 jenkins发布时,使用ansible执行远程主机上的启动tomcat脚本发现不生效,启动tomcat的脚本中有环境变量. ansible主机为:172.16.35.8 tomcat服务器为 ...
- ycsb 测试Hbase性能
下载 github:https://github.com/brianfrankcooper/YCSB/releases/tag/0.10.0 wget https://github.com/brian ...
- Kubernetes的三种探针
k8s支持存活livenessProbe和就绪readinessProbe两种探针 两种探针都支持以下三种方式 1.exec 通过执行shell命令的方式,判断退出状态码是否是0 示例 exec: c ...
- golang 处理 json 结构体
首先 我们来看一下这个json 字串 { "resp": { ", "respMsg": "成功", "app" ...