20200116(绘图和可视化——pandas)

Posted bltstop

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了20200116(绘图和可视化——pandas)相关的知识,希望对你有一定的参考价值。

由上一节内容可知,matplotlib 实际上是一种比较低级的工具。要组装一张图表,得用它的各种基础组件才行。

pandas 有许多能够利用DataFrame 对象数据组织特点来创建标准图表的高级绘图方法。

 

1. 线型图

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

fig4 = plt.figure()

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

s.plot()

如图:

技术图片

 

Series.plot 方法的参数:

 技术图片

 

 技术图片

 

 

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

 

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

 

如图:

技术图片

 

专用于DataFrame 的plot 的参数:

技术图片

 

 

 

2. 柱状图

1)在生成线型图的代码中加上 kind=‘bar’(垂直柱状图)或kind=‘barh‘(水平柱状图)即可生成柱状图。

 

fig5,axes = plt.subplots(2, 1)
data = Series(np.random.rand(16), index =list(abcdefghijklmnop)) data.plot(kind=bar, ax=axes[0], color=k, alpha=0.7) data.plot(kind=barh, ax=axes[0], color=k, alpha=0.7)

 

技术图片

 

 如图:

技术图片

 

 

2)对于DataFrame ,柱状图会将每一行的值分为一组:

df = DataFrame(np.random.rand(6, 4),
                index = [one,two,three,four,five,six],
                columns = pd.Index([A, B, C, D], name=Genus))

技术图片

 

 结果:

技术图片

 

注:DataFrame 各列的名称“Genus” 被用作了图例的标题。 

 

3)生成堆积柱状图

设置stacked = True 即可。

 

df.plot(kind = barh, stacked = True, alpha = 0.5)

 

如图:

技术图片

 

 

 

3. 直方图和密度图

 直方图(histogram)是一种可以对值频率进行离散化显示的直方图。数据点被拆分到离散的、间隔均匀的面元中,绘制的是各面元中数据点的数量。

 

4. 散布图

散布图(scatter plot)是观察两个一维数据序列之间的关系的有效手段。

 

 5. 绘制地图:图形化显示海地地震危机数据

以上是关于20200116(绘图和可视化——pandas)的主要内容,如果未能解决你的问题,请参考以下文章

pandas.DataFarme内置的绘图功能参数说明

pandas库scatter_matrix绘图可视化参数详解

数据可视化分析历年电影票房(数据读取过滤分类绘图)

Pandas数据处理+Matplotlib绘图案例

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

数据分析系列 之python中数据的可视化