python matplotlib画图库学习绘制常用的图


Posted in Python onMarch 19, 2019

本文实例为大家分享了python matplotlib绘制常用图的具体代码,供大家参考,具体内容如下

github地址

导入相关类

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
%matplotlib inline
plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False #用来正常显示负号
#有中文出现的情况,需要u'内容'
#需要安装simhei.ttf字体,装完之后要重启这个notebook文件才行
#参考https://www.zhihu.com/question/25404709/answer/170849168
#指定图形的字体 
font = {'color' : 'darkred', 
 'weight' : 'normal', 
 'size' : 16 
 }

画一个折线图

ur = pd.read_csv('unrate.csv')
print(ur.dtypes)
## 转成时间格式
ur['DATE'] = pd.to_datetime(ur['DATE'])
print(ur.dtypes)
## 读取头部12个月数据
ur12 = ur.loc[0:11]
## x轴:DATE,y轴:VALUE
plt.figure(figsize=(10,5))
plt.plot(ur12['DATE'],ur12['VALUE'],label='value1') # 折线1
plt.plot(ur12['DATE'],ur12['VALUE2'],label='value2') # 折线2
plt.xticks(rotation=45) # 控制x轴数据旋转角度
plt.xlabel(u'月份',fontdict=font)
plt.ylabel(u'比率',fontdict=font)
plt.title(u'比率趋势图',fontdict=font)
plt.legend(loc=2) # 图例,loc是位置
plt.show()

python matplotlib画图库学习绘制常用的图

柱状图,纵向和横向的

ur = pd.read_csv('unrate.csv',index_col='DATE') # DATE列为索引
print(ur.head())
print(ur.dtypes)
## 读取头部12个月数据,并转置,是月份为列名
ur12 = ur.loc['1948/1/1':'1948/12/1'].T
print(ur12.columns.tolist())
print(ur12.head())
cols = ur12.columns.tolist()
bar_left = np.arange(len(cols)) ## 控制柱子的位置
bar_width = 0.4 # 柱子宽度
opacity = 0.4
bar_height_value = ur12.loc['VALUE',cols].values
bar_height_value2 = ur12.loc['VALUE2',cols].values
print(bar_height_value)
print(bar_height_value2)

fig = plt.figure(figsize=(10,10))

as1 = fig.add_subplot(2,1,1) # 添加子图,位置在2行1列的第一个,纵向的
as1.bar(bar_left-bar_width/2,bar_height_value,bar_width,alpha=opacity,label='value1') # 柱状1
as1.bar(bar_left+bar_width/2,bar_height_value2,bar_width,alpha=opacity,label='value2') # 柱状2
as1.set_xticks(bar_left) # 控制x轴数据旋转角度
as1.set_xticklabels(cols,rotation=45) # 控制x轴数据旋转角度
as1.set_xlabel(u'月份',fontdict=font)
as1.set_ylabel(u'比率',fontdict=font)
as1.set_title(u'比率趋势图',fontdict=font)
as1.legend(loc=2) # 图例,loc是位置

as2 = fig.add_subplot(2,1,2) # 添加子图,位置在2行1列的第二个,横向的
as2.barh(bar_left-bar_width/2,bar_height_value,bar_width,alpha=opacity,label='value1') # 柱状1
as2.barh(bar_left+bar_width/2,bar_height_value2,bar_width,alpha=opacity,label='value2') # 柱状2
as2.set_yticks(bar_left) # 控制x轴数据旋转角度
as2.set_yticklabels(cols) # 控制x轴数据旋转角度
as2.set_ylabel(u'月份',fontdict=font)
as2.set_xlabel(u'比率',fontdict=font)
as2.set_title(u'比率趋势图',fontdict=font)
as2.legend(loc=1) # 图例,loc是位置
plt.show()

python matplotlib画图库学习绘制常用的图

散点图

## 散点图
fs = pd.read_csv('fandango_scores.csv')
print(fs.columns.tolist())
print(fs.head(1))
plt.figure(figsize=(8,6))
# x轴:Fandango_Ratingvalue,y轴:RT norm
plt.scatter(fs['Fandango_Ratingvalue'],fs['RT_user_norm']) # 散点1
plt.scatter(fs['Fandango_Ratingvalue'],fs['RT_norm'],marker='x',c='r') # 散点2
plt.xlabel('Fandango_Ratingvalue')
plt.ylabel('RT norm')
plt.title(u'散点图1')
plt.show()

python matplotlib画图库学习绘制常用的图

直方图

fs = pd.read_csv('fandango_scores.csv')
plt.figure(figsize=(10,10))
plt.hist(fs['Fandango_Ratingvalue'],range=(3,5),bins=10)
plt.ylabel('Fandango_Ratingvalue')
plt.show()

python matplotlib画图库学习绘制常用的图

盒图,最大值、最小值、中位数、75位数、25位数

fs = pd.read_csv('fandango_scores.csv')
plt.figure(figsize=(10,8))
cols = ['Fandango_Ratingvalue','RT_norm','RT_user_norm']
plt.boxplot(fs[cols].values)
plt.xticks(np.arange(len(cols))+1,cols,rotation=90)
plt.show()

python matplotlib画图库学习绘制常用的图

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现识别相似图片小结
Feb 22 Python
Python对数据库操作
Mar 28 Python
python 数据的清理行为实例详解
Jul 12 Python
Python数据拟合与广义线性回归算法学习
Dec 22 Python
python实现简单登陆流程的方法
Apr 22 Python
Python中安装easy_install的方法
Nov 18 Python
python控制nao机器人身体动作实例详解
Apr 29 Python
聊聊python里如何用Borg pattern实现的单例模式
Jun 06 Python
Django 源码WSGI剖析过程详解
Aug 05 Python
python 字典套字典或列表的示例
Dec 16 Python
浅谈在django中使用redirect重定向数据传输的问题
Mar 13 Python
如何用Anaconda搭建虚拟环境并创建Django项目
Aug 02 Python
详解python的四种内置数据结构
Mar 19 #Python
python3使用matplotlib绘制条形图
Mar 25 #Python
python3使用matplotlib绘制散点图
Mar 19 #Python
浅谈PYTHON 关于文件的操作
Mar 19 #Python
python scatter散点图用循环分类法加图例
Mar 19 #Python
python使用matplotlib画柱状图、散点图
Mar 18 #Python
matplotlib实现区域颜色填充
Mar 18 #Python
You might like
理解和运用PHP中的多态性[译]
2011/08/02 PHP
PHP采用curl模仿用户登陆新浪微博发微博的方法
2014/11/07 PHP
php打印一个边长为N的实心和空心菱型的方法
2015/03/02 PHP
详解YII关联查询
2016/01/10 PHP
PHPWind9.0手动屏蔽验证码解决后台关闭验证码但是依然显示的问题
2016/08/12 PHP
PHP二维索引数组的遍历实例分析【2种方式】
2019/06/24 PHP
js各种验证文本框输入格式(正则表达式)
2010/10/22 Javascript
js arguments对象应用介绍
2012/11/28 Javascript
ExtJs设置GridPanel表格文本垂直居中示例
2013/07/15 Javascript
jquery分页插件jquery.pagination.js实现无刷新分页
2016/04/01 Javascript
Bootstrap每天必学之警告框插件
2016/04/26 Javascript
jQuery设置单选按钮radio选中/不可用的实例代码
2016/06/24 Javascript
jQuery插件jqGrid动态获取列和列字段的方法
2017/03/03 Javascript
nodejs入门教程四:URL相关模块用法分析
2017/04/24 NodeJs
微信小程序tabBar用法实例详解
2017/12/04 Javascript
layui select获取自定义属性方法
2018/08/15 Javascript
vue组件之间数据传递的方法实例分析
2019/02/12 Javascript
如何在VUE中使用vue-awesome-swiper
2021/01/04 Vue.js
[28:28]Ti4 冒泡赛第二天NEWBEE vs NaVi 2
2014/07/15 DOTA
[01:00:53]OG vs IG 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
[02:13] 完美世界DOTA2联赛PWL DAY5集锦
2020/11/03 DOTA
详解Python3.1版本带来的核心变化
2015/04/07 Python
Python+Turtle动态绘制一棵树实例分享
2018/01/16 Python
Python实现基于TCP UDP协议的IPv4 IPv6模式客户端和服务端功能示例
2018/03/22 Python
python3+PyQt5+Qt Designer实现扩展对话框
2018/04/20 Python
分析python请求数据
2018/08/19 Python
python使用Matplotlib画饼图
2018/09/25 Python
简单了解django缓存方式及配置
2019/07/19 Python
Keras保存模型并载入模型继续训练的实现
2021/02/20 Python
Java servlet面试题
2012/03/04 面试题
护士自荐信怎么写
2013/10/18 职场文书
父亲的菜园教学反思
2014/02/13 职场文书
写给老婆的检讨书
2014/02/21 职场文书
爱国主义演讲稿
2014/05/07 职场文书
个人委托书怎么写
2014/09/17 职场文书
2014年小学数学教师工作总结
2014/12/03 职场文书