Pyecharts 结合 Pandas 绘制图表
前言
数据的可视化是我们数据分析最重要的环节,图表可以化复杂为简洁,化抽象为具体,使读者或听众更容易理解.数据可视化为图表,能让数据更加直观,更加触手可及,让企业能够更迅速,更准确地做出商业决策.让企业能够更好地在所处的领域有所成就.甚至立于不败之地.之前学过 pyecharts 的绘图库,它的强大让我很震撼,但是再好的绘图库只是前端的一种表现形式,数据才是数据分析的最重要对象,之前《Python 绘制精美可视化数据分析图表 (二)-pyecharts》的数据都是我们手动创建的数据,这显然不符合我们日常开发需求,做数据分析,往往会有大量数据需要整理,数据量越大,得出的结论会更加准确.所以我们的数据会来自不同的渠道.会存储在不同类型的文件中.我们平时的数据一般来自 Excel,csv,TXT,json 等等.Excel 正是最常用的数据存储媒介。如果说数据是米,那这些存储媒介就是粮仓。而 Pandas 是和这些文件媒介结合使用最好的数据处理库之一,Pandas 是一个强大的分析结构化数据的工具集, 可以对各种数据进行运算操作,比如归并、再成形、选择,还有数据清洗和数据加工特征。广泛应用在学术、金融、统计学等各个数据分析领域。
准备
安装 pyecharts 和 Pandas
默认安装符合 Python 版本的最新的版本
可通过代码查看安装版本
运行结果:
pyecharts 结合 pandas 绘制一周销售情况折线图
示例中的 Excel 数据:
![](https://static001.geekbang.org/infoq/a8/a82b5831a9b14b6f42b49f18ec5a87c7.png)
第一步当然是导入 Python 库,导入 pyecharts 和 pandas
使用 pandas 导入 excel 表格中的数据
df = pd.read_excel(r'data.xlsx')
对数据进行转置,让数据变成适合我们需要的格式
df2 = pd.DataFrame(df.values.T, index=df.columns, columns=df.index)#转置
![](https://static001.geekbang.org/infoq/f7/f7b6f5dbc5b98c35666e9bf17e2b5eb5.png)
处理数据:把数据方式分开放到对应的 list
创建三个 list 来存储数据
使用 for 循环处理数据
数据处理结果:
![](https://static001.geekbang.org/infoq/06/06584850cadfce721fced34714c6f701.png)
涉及到多条折线展示,使用层叠多图函数 overlap()来处理,overlap()能让多个图形在同一图表同时展示,不但可以层叠同一类型还可以层叠多种类型的图形,比如:直方图和折线图
创建一个 xiaoshou()函数:
先设置基本配置
循环 data 列表绘制图表,不管后面增加多少行多少列数据都能自适应
然后统一渲染
xiaoshou().render()
最终效果:
![](https://static001.geekbang.org/infoq/20/203921e8d1f125ff85ab76039897a34a.png)
总结
使用 for 循环处理数据再放到 pyecharts 进行渲染绘制图表,能够很好自适应表格数据的删减
版权声明: 本文为 InfoQ 作者【迷彩】的原创文章。
原文链接:【http://xie.infoq.cn/article/92326b7494fdc1696d05b350b】。文章转载请联系作者。
评论