使用pandas和seaborn绘图(数据可视化)

本文介绍了如何使用pandas和seaborn库进行数据可视化,包括线型图、柱状图、直方图、散点图、分面网格等多种图表的绘制方法,强调了seaborn在美化图形和简化复杂图表创建方面的优势。
摘要由CSDN通过智能技术生成

上次发了一篇 matplotlib API 可视化入门 ,matplotlib实际上是一种比较低级的工具。

pandas自身就有内置可视化方法,用于简化从DataFrame和Series绘制图形。另一个库seaborn(https://seaborn.pydata.org/),由Michael Waskom创建的静态图形库。Seaborn简化了许多常见可视类型的创建。

线型图

Series和DataFrame都有一个用于生成各类图表的plot方法。默认情况下,它们所生成的是线型图(如图9-13所示):

s = pd.Series(np.random.randn(10).cumsum(), index=np.arange(0, 100, 10))
s.plot()

在这里插入图片描述
图9-13 简单的Series图表示例

该Series对象的索引会被传给matplotlib,并用以绘制X轴。可以通过use_index=False禁用该功能。X轴的刻度和界限可以通过xticks和xlim选项进行调节,Y轴就用yticks和ylim。plot参数的完整列表请参见表9-3。我只会讲解其中几个,剩下的就留给读者自己去研究了。
在这里插入图片描述在这里插入图片描述
表9-3 Series.plot方法的参数

pandas的大部分绘图方法都有一个可选的 ax 参数,它可以是一个matplotlib的subplot对象。这使你能够在网格布局中更为灵活地处理subplot的位置。

DataFrame的plot方法会在一个subplot中为各列绘制一条线,并自动创建图例(如图9-14所示):

df = pd.DataFrame(np.random.randn(10, 4).cumsum(0),
					columns=['A', 'B', 'C', 'D'],
					index=np.arange(0, 100, 10))
df.plot()

在这里插入图片描述
图9-14 简单的DataFrame绘图

plot属性包含一批不同绘图类型的方法。例如,df.plot()等价于df.plot.line()。后面会学习这些方法。

笔记:plot的其他关键字参数会被传给相应的matplotlib绘图函数,所以要更深入地自定义图表,就必须学习更多有关matplotlib API的知识。

DataFrame还有一些用于对列进行灵活处理的选项,例如,是要将所有列都绘制到一个subplot中还是创建各自的subplot。详细信息请参见表9-4。
在这里插入图片描述
表9-4 专用于DataFrame的plot参数

注意: 有关时间序列的绘图,请见第11章。

柱状图

plot.bar() 和plot.barh() 分别绘制水平和垂直的柱状图。这时,Series和DataFrame的索引将会被用作X(bar)或Y(barh)刻度(如图9-15所示):

fig, axes = plt.subplots(2, 1)
data = pd.Series(np.random.rand(16), index=list('abcdefghijklmnop')
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值