网站首页 > 技术文章 正文
作者:潮汐
来源:Python 技术
今天的文章讲解如何利用 Pandas 来绘图,前面写过 matplotlib 相关文章,matplotlib 虽然功能强大,但是 matplotlib 相对而言较为底层,画图时步骤较为繁琐,比较麻烦,因为要画一张完整的图表,需要实现很多的基本组件,比如图像类型、刻度、标题、图例、注解等等。目前有很多的开源框架所实现的绘图功能是基于 matplotlib 的,pandas是其中之一,对于 pandas 数据分析而言,直接使用 pandas 本身实现的绘图方法比 matplotlib 更方便简单。关于更多 Pandas 的相关知识请参考官方文档
Pandas 绘制线状图
使用 Pandas 绘制线状图代码如下:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
def craw_line():
ts = pd.Series(np.random.randn(1000), index=pd.date_range("1/1/2000", periods=1000))
ts = ts.cumsum()
ts.plot()
plt.show()
if __name__ == '__main__':
craw_line()
显示结果如下:
第二种绘画线状图方式如下:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
def craw_line1():
ts = pd.Series(np.random.randn(1000), index=pd.date_range("1/1/2000", periods=1000))
df = pd.DataFrame(np.random.randn(1000, 4), index=ts.index, columns=list("ABCD"))
df = df.cumsum()
df.plot()
plt.show()
if __name__ == '__main__':
craw_line1()
线性图显示结果如下:
Pandas 绘制条形图
除了绘制默认的线状图,还能绘制其他图形样式,例如通过以下方法绘制条形图。绘图方法可以作为plot()的kind关键字参数提供。
绘制条形图1
通过如下方法绘制条形图1,详细代码如下:
def craw_bar():
ts = pd.Series(np.random.randn(1000), index=pd.date_range("1/1/2000", periods=1000))
df = pd.DataFrame(np.random.randn(1000, 4), index=ts.index, columns=list("ABCD"))
plt.figure()
df.iloc[5].plot(kind="bar")
plt.show()
if __name__ == '__main__':
craw_bar()
结果图显示如下:
绘制条形图2
通过如下方法绘制条形图2,详细代码如下:
def craw_bar1():
#ts = pd.Series(np.random.randn(1000), index=pd.date_range("1/1/2000", periods=1000))
df2 = pd.DataFrame(np.random.rand(10, 4), columns=["a", "b", "c", "d"])
df2.plot.bar()
plt.show()
if __name__ == '__main__':
craw_bar1()
图形结果展示如下:
生成堆叠条形图
上面的条形图2可以生成堆叠条形图,加上stacked=True参数即可,详细代码如下:
def craw_bar2():
df2 = pd.DataFrame(np.random.rand(10, 4), columns=["a", "b", "c", "d"])
df2.plot.bar(stacked=True)
plt.show()
if __name__ == '__main__':
craw_bar2()
堆叠条形图展示如下:
将以上条形图设置为水平条形图,详细代码如下:
def craw_bar3():
df2 = pd.DataFrame(np.random.rand(10, 4), columns=["a", "b", "c", "d"])
df2.plot.barh(stacked=True)
plt.show()
if __name__ == '__main__':
craw_bar3()
展示结果图如下:
总结
今天的文章就到这里啦,希望今天的文章对大家有帮助!
猜你喜欢
- 2025-03-24 Excel支持Python了,你先冷静一下
- 2025-03-24 解放双手,利用python自动完成ppt
- 2025-03-24 如何在VS Code中编写、编译、调试Python代码
- 2025-03-24 少儿编程学习Python这三本书就够了,入门到精通,8岁即可入手
- 2025-03-24 使用python把csv汇总成excel(python将csv转成dataframe)
- 2025-03-24 一篇文章告诉你作为普通人Python该不该学,适不适合学
- 2025-03-24 python爬虫神器 Pyppeteer使用方法解析
- 2025-03-24 用 Python 库 PySimpleGUI 制作自动化办公小软件
- 2025-03-24 一款可以运行python的单片机(一款可以运行python的单片机软件)
- 2025-03-24 Python 操作mysql实现事务处理(python操作mysql)
- 265℃Python短文,Python中的嵌套条件语句(六)
- 264℃python笔记:for循环嵌套。end=""的作用,图形打印
- 263℃PythonNet:实现Python与.Net代码相互调用!
- 257℃Python操作Sqlserver数据库(多库同时异步执行:增删改查)
- 257℃Python实现字符串小写转大写并写入文件
- 117℃原来2025是完美的平方年,一起探索六种平方的算吧
- 97℃Python 和 JavaScript 终于联姻了!PythonMonkey 要火?
- 90℃Ollama v0.4.5-v0.4.7 更新集合:Ollama Python 库改进、新模型支持
- 最近发表
-
- 金母鸡量化教学场:pandas—数据挖掘的Python库
- 分享一个用于商业决策数据挖掘的python案例
- Python图像识别实战(二):批量图像读取和像素转换(附源码)
- 从小白到大神,这10个超实用的 Python 编程技巧不可少
- 太震撼!527页战略级Python机器学习实战,实用度碾压群书!附PDF
- 一篇文章带你解析Python进程(一篇文章带你解析python进程怎么写)
- 大数据分析师如何进行数据挖掘?大数据分析师丨 2025 年报考攻略
- UG编程第34节:浅谈机床坐标系(ug编程机床坐标系细节)
- 想入门Python?先狠下心来死磕这7个方向
- Python大屏看板最全教程之Pyecharts图表
- 标签列表
-
- python中类 (31)
- python 迭代 (34)
- python 小写 (35)
- python怎么输出 (33)
- python 日志 (35)
- python语音 (31)
- python 工程师 (34)
- python3 安装 (31)
- python音乐 (31)
- 安卓 python (32)
- python 小游戏 (32)
- python 安卓 (31)
- python聚类 (34)
- python向量 (31)
- python大全 (31)
- python次方 (33)
- python桌面 (32)
- python总结 (34)
- python浏览器 (32)
- python 请求 (32)
- python 前端 (32)
- python验证码 (33)
- python 题目 (32)
- python 文件写 (33)
- python中的用法 (32)