干货案例 | Pandas数据可视化怎么做?

Python基础教程——10个可视化案例实操,一图胜千言! 我们的数据科学家的任务是展示市场营销部门进行的一次民意调查的结果。在这次民意调查中,客户被要求对一种高蛋白棒的新旧配方的性价比、营养价值、外观和口味进行评分。据科学家使用雷达图来显示投票结果。雷达图将不同的属性(口味、外观等)放在不同的坐标轴上,然后连接属于同一实体(本例中为蛋白棒)的属性值,形成一个多边形区域。不同的区域使用不同的颜色,便于查看者掌握产品之间的差异。 阅读详情

数据可视化可以让我们很直观的发现数据中隐藏的规律,察觉到变量之间的互动关系,可以帮助我们更好的给他人解释现象,做到一图胜千文的说明效果。

常见的数据可视化库有:

  • matplotlib 是最常见的2维库,可以算作可视化的必备技能库,由于matplotlib是比较底层的库,api很多,代码学起来不太容易。

  • seaborn 是建构于matplotlib基础上,能满足绝大多数可视化需求。更特殊的需求还是需要学习matplotlib。

  • pyecharts 上面的两个库都是静态的可视化库,而pyecharts有很好的web兼容性,可以做到可视化的动态效果。

但是在数据科学中,几乎都离不开pandas数据分析库,而pandas可以做:

  • 数据采集:如何批量采集网页表格数据?

  • 数据读取:pd.read_csv/pd.read_excel

  • 数据清洗(预处理):理解pandas中的apply和map的作用和异同

  • 可视化,兼容matplotlib语法(今天重点)

准备工作

如果你之前没有学过pandas和matpltolib,我们先安装好这几个库

!pip3 install numpy
!pip3 install pandas
!pip3 install matplotlib

已经安装好,现在我们导入这几个要用到的库。使用的是伦敦天气数据,一开始我们只有12个月的小数据作为例子

#jupyter notebook中需要加这行代码
%matplotlib inline
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
#读取天气数据
df = pd.read_csv('data/london2018.csv')
df

plot最简单的图

选择Month作为横坐标,Tmax作为纵坐标,绘图。

大家注意下面两种写法

#写法1
df.plot(x='Month', y='Tmax')
plt.show()

  • 横坐标轴参数x传入的是df中的列名Month

  • 纵坐标轴参数y传入的是df中的列名Tmax

折线图

上面的图就是折线图,折线图语法有三种

  • df.plot(x='Month', y='Tmax')

  • df.plot(x='Month', y='Tmax', kind='line')

  • df.plot.line(x='Month', y='Tmax')

df.plot.line(x='Month', y='Tmax')
plt.show()

#grid绘制格线
df.plot(x='Month', y='Tmax', kind='line', grid=True)
plt.show()

多个y值

上面的折线图中只有一条线, 如何将多个y绘制到一个图中,比如Tmax, Tmin。

df.plot(x='Month', y=['Tmax', 'Tmin'])
plt.show()

条形图

df.plot(x='Month',
        y='Rain',
        kind='bar')
#同样还可以这样画
#df.plot.bar(x='Month', y='Rain')
plt.show()

水平条形图

bar环卫barh,就可以将条形图变为水平条形图

df.plot(x='Month',
        y='Rain',
        kind='barh')
#同样还可以这样画
#df.plot.bar(x='Month', y='Rain')
plt.show()

多个变量的条形图

df.plot(kind='bar',
        x = 'Month',
       y=['Tmax', 'Tmin'])
plt.show()

散点图

df.plot(kind='scatter',
        x = 'Month',
        y = 'Sun')
plt.show()

饼形图

df.plot(kind='pie', y='Sun')
plt.show()

上图绘制有两个小问题:

  • legend图例不应该显示

  • 月份的显示用数字不太正规

df.index = ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec']
df.plot(kind='pie', y = 'Sun', legend=False)
plt.show()

更多数据

一开头的数据只有12条记录(12个月)的数据,现在我们用更大的伦敦天气数据

import pandas as pd
df2 = pd.read_csv('data/londonweather.csv')
df2.head()

df2.Rain.describe()
count    748.000000
mean      50.408957
std       29.721493
min        0.300000
25%       27.800000
50%       46.100000
75%       68.800000
max      174.800000
Name: Rain, dtype: float64

上面一共有748条记录, 即62年的记录。

箱型图

df2.plot.box(y='Rain')
#df2.plot(y='Rain', kind='box')
plt.show()

直方图

df2.plot(y='Rain', kind='hist')
#df2.plot.hist(y='Rain')
plt.show()

纵坐标的刻度可以通过bins设置

df2.plot(y='Rain', kind='hist', bins=[0,25,50,75,100,125,150,175, 200])
#df2.plot.hist(y='Rain')
plt.show()

多图并存

df.plot(kind='line',
         y=['Tmax', 'Tmin', 'Rain', 'Sun'], #4个变量可视化
         subplots=True,   #多子图并存
         layout=(2, 2),   #子图排列2行2列
         figsize=(20, 10)) #图布的尺寸
plt.show()

df.plot(kind='bar',
         y=['Tmax', 'Tmin', 'Rain', 'Sun'], #4个变量可视化
         subplots=True,   #多子图并存
         layout=(2, 2),   #子图排列2行2列
         figsize=(20, 10)) #图布的尺寸
plt.show()

加标题

给可视化起个标题

df.plot(kind='bar',
         y=['Tmax', 'Tmin'], #2个变量可视化
         subplots=True,   #多子图并存
         layout=(1, 2),   #子图排列1行2列
         figsize=(20, 5),#图布的尺寸
         title='The Weather of London')  #标题
plt.show()

保存结果

可视化的结果可以存储为图片文件

df.plot(kind='pie', y='Rain', legend=False, figsize=(10, 5), title='Pie of Weather in London')
plt.savefig('img/pie.png')
plt.show()

df.plot更多参数

df.plot(x, y, kind, figsize, title, grid, legend, style)

  • x 只有dataframe对象时,x可用。横坐标

  • y 同上,纵坐标变量

  • kind 可视化图的种类,如line,hist, bar, barh, pie, kde, scatter

  • figsize 画布尺寸

  • title 标题

  • grid 是否显示格子线条

  • legend 是否显示图例

  • style 图的风格

查看plot参数可以使用help

import pandas as pd
help(pd.DataFrame.plot)

End.

来源:大邓和他的Python

40个python代码可视化实践案例 六. 紫色柱形图 十四、k线图 阅读详情

相关推荐

Python数据分析:手把手教你用Pandas生成可视化图表

Pandas是Python的核心数据分析支持库,提供了快速、灵活、明确的数据结构,旨在简单、直观地处理关系型、标记型数据。下面,我们总结一下PD库的一些使用方法和入门技巧。

weixin_68789096的博客 354

pandas可视化

各种统计图

changan 3036

AutoSAR开发实战:如何用Matlab/Simulink从零搭建SWC组件(附完整代码示例)

本文详细介绍了使用Matlab/Simulink从零开发AutoSAR SWC组件的全流程,包括环境配置、ARXML文件导入、算法模型开发、代码生成与集成验证等关键步骤。通过实战案例和完整代码示例,帮助开发者掌握AutoSAR标准下的软件开发技术,提升汽车电子系统的开发效率。

weixin_29093017的博客 256

干货案例|Pandas数据可视化怎么做?

数据可视化可以让我们很直观的发现数据中隐藏的规律,察觉到变量之间的互动关系,可以帮助我们更好的给他人解释现象,做到一图胜千文的说明效果。常见的数据可视化库有:matplotlib 是最常...

qq_21787049的博客 201

eNSP无法启动AR报错码40,而且按照eNSP帮助手册排查都没用,我的处理方法【自己存档版】

eNSP无法启动AR报错码40,而且按照eNSP帮助手册排查都没用,我的处理方法【自己存档版】

mizhiakk的博客 8426

CAN通信:EB中配置CAN驱动,配置参数解析

以S32K314芯片说明,其他芯片不同,参数配置也有差异。

zhangxiaio1的博客 2174

pyecharts怎么绘制散点图_干货案例Pandas数据可视化怎么做?

数据可视化可以让我们很直观的发现数据中隐藏的规律,察觉到变量之间的互动关系,可以帮助我们更好的给他人解释现象,做到一图胜千文的说明效果。常见的数据可视化库有:matplotlib 是最常见的2维库,可以算作可视化的必备技能库,由于matplotlib是比较底层的库,api很多,代码学起来不太容易。seaborn 是建构于matplotlib基础上,能满足绝大多数可视化需求。更特殊的需求还...

weixin_39738774的博客 508

Verilog仿真时读取bin文件模拟输入数据流,将输出数据流写入bin文件

需要关注的是,一般会省略文件起始地址和读取长度,那么mem为多大,就会从文件中读取多大的数据出来填充mem。如果只需要读取一次文件,那么代码到此就结束了,但是如果还需要每一帧都读取该文件转换为数据流,则在循环里判断新的一帧信号是否到来,在新的一帧再次打开一次文件,从头开始读取数据。

qq_41137205的博客 2773

箱线图多个y含组怎么画_干货案例 | Pandas数据可视化怎么做?

↑↑↑点击上方蓝字,关注极客猴如果你喜欢极客猴,可以把我置顶或星标~题图:from Pexels数据可视化可以让我们很直观的发现数据中隐藏的规律,察觉到变量之间的互动关系,可以帮助我们更好的给他人解释现象,做到一图胜千文的说明效果。常见的数据可视化库有:matplotlib 是最常见的2维库,可以算作可视化的必备技能库,由于matplotlib是比较底层的库,api很多,代码学起来不太...

weixin_30950075的博客 2387

学Simulink——基于Simulink的固态变压器(SST)多级协同控制​

本文介绍了基于Simulink的固态变压器(SST)多级协同控制系统设计与仿真方法。SST作为智能电网关键设备,包含AC-DC整流、DC-DC隔离和DC-AC逆变三级变换器。针对级间耦合问题,提出了能量-功率协同控制策略,通过纵向解耦和横向联动实现稳定运行。详细演示了在Simulink中搭建三级主电路、设计协同控制器(含电网定向控制、功率前馈和虚拟惯性控制)的全过程,并通过负载突变测试验证了系统动态性能(直流母线电压波动<2%)。最后给出了工程部署建议,包括数字控制延时补偿、启动序列设计和代码自动生成

xiaoheshang_123的博客 207

YOLO11涨点优化:卷积魔改 | DCNv2升级版本,助力检测

在DCN的基础上,增加了2个创新点,分别是调制模块和使用多个调制后的DCN模块,从形成了DCN的升级版本——DCNv2

①答疑群聊服务;②YOLO大模型知识问答系统;③计算机视觉论文生成智能体; 969

python pandas_Python库Pandas数据可视化实战案例

点击上方“爱好Python的胡同学”,选择“星标”公众号每晚八点,Python干货,不见不散!数据可视化可以让我们很直观的发现数据中隐藏的规律,察觉到变量之间的互动关系,可以帮助我们更好的给他人解释现象,做到一图胜千文的说明效果。常见的数据可视化库有:matplotlib 是最常见的2维库,可以算作可视化的必备技能库,由于matplotlib是比较底层的库,api很多,代码学起来不太容易...

weixin_39726408的博客 548

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

pandas 作图 统计_使用pandas和seaborn制作炫酷图表:数据可视化干货

导读:我们介绍过用matplotlib制作图表的一些tips,感兴趣的同学可以戳→纯干货:手把手教你用Python做数据可视化(附代码)。matplotlib是一个相当底层的工具。你可以从其基本组件中组装一个图表:数据显示(即绘图的类型:线、条、框、散点图、轮廓等)、图例、标题、刻度标记和其他注释。在pandas中,我们可能有多个数据列,并且带有行和列的标签。pandas自身有很多内建方法可以简化...

weixin_39818631的博客 434

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

python 设置横坐标刻度_Python库Pandas数据可视化实战案例

点击上方“爱好Python的胡同学”,选择“星标”公众号每晚八点,Python干货,不见不散!数据可视化可以让我们很直观的发现数据中隐藏的规律,察觉到变量之间的互动关系,可以帮助我们更好的给他人解释现象,做到一图胜千文的说明效果。常见的数据可视化库有:matplotlib 是最常见的2维库,可以算作可视化的必备技能库,由于matplotlib是比较底层的库,api很多,代码学起来不太容易...

weixin_28568819的博客 7638

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

太实用了!这几个Python数据可视化案例!

点击上方“菜鸟学Python”,选择“星标”公众号超级无敌干货,第一时间送达!!!大家好,我是菜鸟哥。(文末送书)利用可视化探索图表一、数据可视化与探索图 数据可视化是指用图形或表格的方式来呈现数据。图表能够清楚地呈现数据性质, 以及数据间或属性间的关系,可以轻易地让人看图释义。用户通过探索图(Exploratory Graph)可以了解数据的特性、寻找数据的趋...

cainiao_python的博客 1万+

数据可视化干货:使用pandas和seaborn制作炫酷图表(附代码)

点击上方“Python爬虫与数据挖掘”,进行关注回复“书籍”即可获赠Python从入门到进阶共10本电子书今日鸡汤吾日三省吾身:为人谋而不忠乎?与朋友交而不信乎?传不习乎?导读:我们介绍过...

pdcfighting的博客 1449

太实用了!这几个Python数据可视化案例!(文末送书)

点击上方“关于数据分析与可视化”,选择“星标”公众号超级无敌干货,第一时间送达!!!大家好,我是俊欣。(文末送书)利用可视化探索图表一、数据可视化与探索图 数据可视化是指用图形或表格的方式来呈现数据。图表能够清楚地呈现数据性质, 以及数据间或属性间的关系,可以轻易地让人看图释义。用户通过探索图(Exploratory Graph)可以了解数据的特性、寻找数据的趋...

weixin_43373042的博客 2181

【干货】pandas相关工具包

1 Pandas 介绍 Pandas是python的一个数据分析包,最初由AQR Capital Management于2008年4月开发,并于2009年底开源出来,目前由专注于Python数据包开发的PyData开发team继续开发和维护,属于PyData项目的一部分。Pandas最初被作为金融数据分析工具而开发出来,因此,pandas为时间序列分析提供了很好的支持。 Pandas的名称来自于面...

yanqianglifei的专栏 906

干货分享 | 用Streamlit来制作数据可视化面板实战

在上回初步介绍了“steamlit”框架的基本用法之后(干货分享 | 用 Streamlit 来制作数据可视化面板教程(一)),这回我们动手来实践一下,用“streamlit”框架来制作一...

weixin_43373042的博客 4335

送书 | 数据可视化干货:使用pandas和seaborn制作炫酷图表(附代码)

导读:我们介绍过用matplotlib制作图表的一些tips,感兴趣的同学可以戳→纯干货:手把手教你用Python做数据可视化(附代码)。matplotlib是一个相当底层的工具。你可以从...

tongtongjing1765的博客 1364

可以的,“Pandas”现在也可以绘制交互式的图形了,来看看怎么做的吧?

大家好,我是俊欣,今天来和大家分享一下“如何用Pandas来绘制交互式的图形”,希望读者朋友们读了之后能够有所收获。01Plotly作为后端支持我们可以使用第三方的可视化模块来做“Pand...

weixin_43373042的博客 553
上一篇: 加速数据分析,这12种高效Numpy和Pandas函数为你保驾护航
下一篇: 博士学位真的那么重要吗?上交大博士亲述科研心路,获4万高赞~
机器学习算法那些事
博客等级 码龄9年 1633粉丝 62原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值