python绘数据图(却不简单的python线型图设计)(1)

前言

Matplotlib实际上是一种比较低级的工具。要组装一张图表,得用它的各种基础组件才行:数据展示(及图表类型:线型图、柱状图、合形图、散布图、等值线图等)、图例、标题、刻度标签以及其他注解型信息。这是因为要根据数据制作一张完整图表通常都需要用到多个对象。在pandas中,我们有行标签、列标签以及分组信息。这也就是说,要制作一张完整的图表,原本需要一大堆的matplotlib代码,现在只需一两条简洁的语句就可以了。

Pandas有许多能够利用DataFrame对象数据组值特点来创建标准图表的高级绘图方法(这些函数的数量还在不断增加)。

线型图

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

python绘数据图(却不简单的python线型图设计)(2)

1.Series线型图

In [115]: s=Series(np.random.randn(10).cumsum(),index=np.arange(0,100,10))

In [116]: s.plot()

该Series对象的索引会被传给matplotlib,并用以绘制X轴。可以通过use_index=False禁用该功能。X轴的刻度和界限可以通过xticks和xlim选项进行调节,Y轴就用yticks和ylim。

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

2. DataFrame线型图

DataFrame的plot方法会在一个subplot中为各列绘制一条线,并自动创建图例:

In [21]: df=DataFrame(np.random.randn(10,4).cumsum(0),

columns=['A','B','C','D'],index=np.arange(0,100,10))

In [22]: df

Out[22]:

A B C D

0 1.646732 -0.793981 -0.378061 0.919709

10 1.023670 1.003974 0.484170 0.873256

20 0.476866 1.586515 1.437752 1.372580

30 0.472327 1.096392 1.118324 -0.361951

40 1.125171 2.893590 -1.257474 0.082420

50 -0.380665 2.575444 -2.851514 -0.267129

60 -0.677242 2.183046 -3.034912 0.134632

70 -1.358804 3.026778 -1.886633 1.608813

80 -0.512531 1.400919 -1.965863 1.420399

90 -1.492331 2.680329 -3.689165 2.340796

3. Series.plot方法的参数

python绘数据图(却不简单的python线型图设计)(3)

4. 专用于DataFrame的plot的参数

DataFrame还有一些用于对列进行灵活处理的选项,例如,是要将所有列都绘制到一个subplot中还是创建各自的subplot。

python绘数据图(却不简单的python线型图设计)(4)

总结

丰富的python 线型图设计方法与参数,具体如上文所示,大家可以上手实际操作,遇到问题随时沟通与讨论。感谢支持!记得关注哦!

,