python数据可视化之matplotlib.pyplot基础以及折线图
作者:Arwen_H 时间:2023-03-04 22:10:01
不论是数据挖掘还是数据建模,都免不了数据可视化的问题。对于Python来说,Matplotlib是最著名的绘图库,它主要用于二维绘图,当然它也可以进行简单的三维绘图(基于spyder)。
- 模块引用
import matplotlib.pyplot as plt #引用画图库中的pyplot模块
-折线条图
语法
import matplotlib.pyplot as plt
data=[1,2,3,4,5,4,2,4,6,7] #随便创建了一个数据
plt.plot(data) #引用画图库中的pyplot模块
plot参数
基本折线图不能满足,这时就需plot的参数来进行调整
美化示例:
import matplotlib.pyplot as plt
yy=[1,2,3,4,5,4,2,4,6,7]#随便创建了一个数据
xx=[3,5,4,1,2,3,4,5,6,3]
zz=[2,3,4,6,4,3,2,4,5,6]
plt.plot(yy,color='r',linewidth=5,linestyle=':',label='数据一')#color指定线条颜色,labeL标签内容
plt.plot(xx,color='g',linewidth=2,linestyle='--',label='数据二')#linewidth指定线条粗细
plt.plot(zz,color='b',linewidth=0.5,linestyle='-',label='数据三')#linestyle指定线形为点
plt.legend(loc=2)#标签展示位置,数字代表标签具位置
plt.xlabel('X轴称')
plt.ylabel('Y轴的名称')
plt.title('2018.7.30折线图示例')
plt.ylim(0,10)#Y轴标签范围为0-10
plt常用参数有:
官网详细说明点这里
属性 | 描述 |
---|---|
xlabel | 设置当前轴的x轴标签:plt.xlabel(‘X标签名') |
ylabel | 设置当前轴的y轴标签:plt.xlabel(‘y标签名') |
title | 设置当前轴的标题:plt.title(‘图例标题名') |
ylim | 获取或设置当前轴的y限制,plt.ylim(0,6)Y轴范围0-6;Xlim同理懒的写了 |
legend | 在轴上放置图例:legend()无参数自动识别,也可用数字指定位置1,2,3,4试着来 |
show | 展示所画图,spyder一般直接运行不需要此步 |
grid | plt.grid()打开或关闭轴网格,网格一样能设置颜色线型 |
rcParams[‘font.sans-serif'] | 图表中文字体:plt.rcParams[‘font.sans-serif']=[‘SimHei']微软雅黑;或=[‘Microsoft Yahei']黑体 |
rcParams[‘axes.unicode_minus'] | 图表轴负数符号显示问题:plt.rcParams[‘axes.unicode_minus'] = False |
plt常画图例有:
官网详细说明点这里
属性 | 描述 |
---|---|
plot | 绘制y与x作为线和/或标记。 |
plot_date | 绘制包含日期的数据。 |
acorr | 绘制x的自相关。 |
axhline | 在轴上添加一条水平线。 |
bar | 制作条形图。 |
barh | 制作一个水平条形图。 |
hist | 绘制直方图 |
hist2d | 制作2D直方图。 |
scatter | y与x的散点图,具有不同的标记大小和/或颜色。 |
stackplot | 绘制堆积区域图。 |
plot常用参数有:
官网详细说明点这里
属性 | 描述 |
---|---|
color | 字体颜色:color=‘r';b、g、r、c、m、y、k、w 或者blue、green、red、cyan、magenta、yellow、black、whtite 或十六进制字符串('#008000') |
linewidth | 线条粗细:linewidth=1.=5.=0.3 |
linestyle | 线条形状:linestyle='–'(虚线);linestyle=':'(点线);linestyle='-.'(短线加点); |
label | 数据标签内容:label=‘数据一',数据标签展示位置需另说明plt.legend(loc=1)数字为标签位置 |
实际应用案例
因案例涉及机密数据,只展示数据可视化的过程及结果,先放结果输出的样式
import pandas as pd #导入pandas库
import pymysql as mysql #导入mysql库
import matplotlib.pyplot as plt #导入数据可视化库
import numpy as np #导入numpy库
plt.rcParams['font.sans-serif'] = ['Microsoft Yahei'] #指定文字字体格式为微软雅黑字段
plt.rcParams['axes.unicode_minus'] = False
connection=mysql.connect(host='数据库ip',port='端口',user='用户账号',password='登录密码',db='连接的库名',charset='utf8')#设置连接数据库的参数
select=connection.cursor()#创建游标
select.execute("SELECT * FROM tabel")#写入SQL查询语句
zd=list((pd.DataFrame(list(select.description)))[0])#获取查询结果的列名
sqldata=select.fetchall()#获取查询结果
select.close #关闭查询
connection.close #关闭数据库接接
data1=pd.DataFrame(list(sqldata)) #将数据转化成df类型
data1.columns=zd #将列名重置为查询结果列名
plt.figure(figsize=(10,5)) #设置图表大小,长10,宽5
plt.plot(data1['机器A拟合度'],label='机器A准确率',color='#aa0000',linestyle='-',linewidth=3)#画机器A准确率的线条
plt.plot(data1['人工A拟合度'],label='人工A准确率',color='#aa0000',linestyle=':',linewidth=3)#画人工A准确率的线条
plt.plot(data1['机器B拟合度'],label='机器B准确率',color='#666666',linestyle='-',linewidth=3)#画机器B准确率的线条
plt.plot(data1['人工B拟合度'],label='人工B准确率',color='#666666',linestyle=':',linewidth=3)#画人工B准确率的线条
plt.plot([0,7],[0.9,0.9],color='g',linestyle='-.',linewidth=1)#画一根绿色的辅助线,x轴从0到7,Y轴为0.9
plt.xticks(np.arange(8),('wk23','wk24','wk25','wk26','wk27','wk28','wk29','wk30'))#更改图表X标签为制定内容
plt.legend(loc=4)#将图例说明放在图表的右下角
plt.title('人机绝对准确率6.4-7.29',fontsize=20)#命名图表名称,设置字体大小
plt.xlabel('周',fontsize=20)#设置X轴名称及字体大小
plt.ylabel('准确率%',fontsize=20)#设置Y轴名称及字体大小
总结
来源:https://blog.csdn.net/Arwen_H/article/details/81282716
标签:python,matplotlib.pyplot,折线图
0
投稿
猜你喜欢
Python字符串大小写转换拼接删除空白
2023-01-24 13:08:01
Python中使用zip函数的七重境界解析
2021-04-01 19:38:43
Python高级特性 切片 迭代解析
2022-03-28 14:32:49
太有才了!让人称绝的404错误页面
2007-08-19 15:51:00
sqlserver中重复数据值只取一条的sql语句
2012-06-06 19:46:31
Python读取图片为16进制表示简单代码
2021-07-24 09:34:15
MySQL5.6解压版服务无法启动之系统错误1067问题
2024-01-14 18:20:46
javascript获取来源的URL代码
2009-02-25 12:36:00
SQL Server数据转换服务基本概念介绍
2009-01-20 15:52:00
vue awesome swiper异步加载数据出现的bug问题
2024-05-03 15:10:58
go如何删除字符串中的部分字符
2024-05-22 10:15:54
Mysql中的NULL和Empty String
2024-01-24 02:27:27
pytorch 图像预处理之减去均值,除以方差的实例
2022-04-20 13:43:45
Python中and和or如何使用
2022-04-27 18:01:49
Python安装spark的详细过程
2021-05-17 09:59:05
CentOS7离线安装MySQL的教程详解
2024-01-20 13:07:33
Python数据结构之栈、队列的实现代码分享
2023-12-07 12:39:08
python读取excel数据绘制简单曲线图的完整步骤记录
2022-04-27 10:52:18
Golang模拟令牌桶进行对访问的限流方式
2024-04-26 17:34:25
python 的赋值语句和基本输入输出详解
2021-07-29 13:55:55