pandas——plot()方法可视化

该文介绍了如何使用pandas的plot方法进行数据可视化,包括绘制Series和DataFrame的数据分布图,条形图,直方图,箱型图,散点图和饼图。通过多个实例展示了不同类型的图表绘制,如累加求和后的数据分布,堆叠条形图,以及各种统计图表的创建过程。
摘要由CSDN通过智能技术生成

pandas——plot()方法可视化

作者:i阿极

作者简介:Python领域新星作者、多项比赛获奖者:博主个人首页

😊😊😊如果觉得文章不错或能帮助到你学习,可以点赞👍收藏📁评论📒+关注哦!👍👍👍

📜📜📜如果有小伙伴需要数据集和学习交流,文章下方有交流学习区!一起学习进步!💪



一、实验目的

熟练掌握使用pandas中数据用plot方法绘制图

二、实验原理

绘图方法允许除了默认的线图之外的一些绘图样式,这些方法可以通过plot()的关键字参数kind提供。这些包括:

bar 、barh:绘制条形图

hist:绘制直方图

box:绘制箱型图

kde、density:绘制密度图

area:面积图

scatter:绘制散点图

hexbin:棱形图

pie:绘制饼图

三、实验环境

Python 3.6.0以上

Jupyter

四、实验内容

练习使用pandas中数据用plot方法绘制图。

五、实验步骤

1.编写代码,使用Series的plot绘制Series中数据的分布图

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
ts = pd.Series(np.random.randn(1000),index=pd.date_range('1/1/2000',periods=1000)) #创建一个Series
ts = ts.cumsum() #对Series数据进行累加求和
ts.plot() #使用plot方法绘制Series中数据分布图
plt.show()

在这里插入图片描述

2.创建一个DataFrame名为df,使用df的plot绘制df中数据的分布图,代码如下:

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

ts = pd.Series(np.random.randn(1000),index=pd.date_range('1/1/2000',periods=1000)) #创建一个Series
df = pd.DataFrame(np.random.randn(1000,4),index=ts.index,columns=list('ABCD')) #创建一个DataFrame
df = df.cumsum() #对df数据进行累加求和

df.plot()
plt.show()

在这里插入图片描述

3.创建一个DataFrame名为df,使用df的plot方法绘制df第6行数据的条形图,代码如下:

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
ts = pd.Series(np.random.randn(1000),index=pd.date_range('1/1/2000',periods=1000)) #创建一个Series
df = pd.DataFrame(np.random.randn(1000,4),index=ts.index,columns=list('ABCD')) #创建一个DataFrame
df = df.cumsum() #对df数据进行累加求和
df.iloc[5].plot(kind='bar')
plt.axhline(0,color='k')
plt.show()

在这里插入图片描述

4.创建一个DataFrame名为df2,使用df2的plot.bar()方法绘制df2数据的条形图,代码如下:

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
df2 = pd.DataFrame(np.random.rand(10,4),columns=['a','b','c','d'])
df2.plot.bar()
plt.show()

在这里插入图片描述

5.使用plot.bar方法对上述df2数据绘制一个堆叠的条形图,通过设置参数stacked=True,代码如下:

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
df2 = pd.DataFrame(np.random.rand(10,4),columns=['a','b','c','d'])
df2.plot.bar(stacked=True)
plt.show()

在这里插入图片描述

6.使用plot.barh方法对上述df2数据,通过设置参数stacked=True,绘制一个水平堆叠条形图,代码如下:

import numpy as np  
import pandas as pd  
import matplotlib.pyplot as plt  
df2 = pd.DataFrame(np.random.rand(10, 4), columns=['a', 'b', 'c', 'd'])  
df2.plot.barh(stacked=True)  
plt.show()  

在这里插入图片描述

7.创建一个DataFrame名为df3,使用df3的plot.hist()方法绘制df3数据的直方图,代码如下:

import numpy as np  
import pandas as pd  
import matplotlib.pyplot as plt  
df3 = pd.DataFrame({'a': np.random.randn(1000) + 1, 'b': np.random.randn(1000),'c': np.random.randn(1000) - 1}, columns=['a', 'b', 'c'])  
df3.plot.hist(alpha=0.5)  
plt.show()

在这里插入图片描述

8.使用plot.hist()方法对上述df3数据,通过设置堆叠参数stacked=True,设置条数大小参数bins=20,绘制一个堆叠直方图,代码如下:

import numpy as np  
import pandas as pd  
import matplotlib.pyplot as plt  
df3 = pd.DataFrame({'a': np.random.randn(1000) + 1, 'b': np.random.randn(1000),'c': np.random.randn(1000) - 1}, columns=['a', 'b', 'c'])  
df3.plot.hist(stacked=True, bins=20)  
plt.show() 

在这里插入图片描述

9.创建一个DataFrame名为df4,使用df4的plot.box()方法绘制df3数据的箱型图,代码如下:

import numpy as np  
import pandas as pd  
import matplotlib.pyplot as plt  
df4 = pd.DataFrame(np.random.rand(10, 5), columns=['A', 'B', 'C', 'D', 'E'])  
df4.plot.box()  
plt.show()  

在这里插入图片描述

10.创建一个DataFrame名为df5,使用df5的plot.scatter()方法绘制df5数据的散点图,代码如下:

import numpy as np  
import pandas as pd  
import matplotlib.pyplot as plt  
df5 = pd.DataFrame(np.random.rand(50, 4), columns=['a', 'b', 'c', 'd'])  
df5.plot.scatter(x='a', y='b');  
plt.show()  

在这里插入图片描述

11.创建一个DataFrame名为df6,使用df6的plot.pie()方法绘制df6数据的饼图,代码如下:

import numpy as np  
import pandas as pd  
import matplotlib.pyplot as plt  
df6 = pd.DataFrame(3 * np.random.rand(4, 2), index=['a', 'b', 'c', 'd'], columns=['x', 'y'])  
df6.plot.pie(subplots=True, figsize=(8, 4))  
plt.show()  

在这里插入图片描述


  • 12
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 8
    评论
pandas.plotpandas库中的一个函数,用于绘制数据的图表。根据引用\[1\],默认情况下,pandas.plot会绘制图例,但可以通过设置legend参数来取消图例的显示。例如,使用df\[:5\].plot(legend=False)可以取消图例的显示。此外,还可以使用legend参数来反向排序图例,例如df\[:5\].plot(legend='reverse')。 根据引用\[2\],在使用pandas.plot函数之前,需要导入numpy、pandas和matplotlib.pyplot这三个库。然后,可以使用pandas的Series和DataFrame对象来创建数据,并使用cumsum()函数对数据进行累加。接下来,可以使用plot函数绘制图表。在这个例子中,使用了secondary_y参数来指定'A'和'B'列使用右Y轴。还使用了ax.set_ylabel和ax.right_ax.set_ylabel来设置主副轴的标签。最后,使用ax.legend和ax.right_ax.legend来设置图例的位置。 根据引用\[3\],可以使用style参数来调整图表的线条样式。可以使用不同的值来指定不同的线条样式,例如':'表示虚线,'-.'表示虚实相间,'--'表示长虚线,'-'表示实线(默认),'.'表示点,'*-'表示实线,数值为星星,'^-'表示实线,数值为三角形。还可以使用style参数对不同的线条分别给出样式,例如df.set_index('name')\[:5\].plot(style=\[':', '--', '.-', '*-'\])。 综上所述,pandas.plot函数可以根据提供的数据绘制图表,并可以通过设置参数来调整图表的样式和图例的显示。 #### 引用[.reference_title] - *1* *3* [Pandas数据分析26——pandas对象可视化.plot()用法和参数](https://blog.csdn.net/weixin_46277779/article/details/126344796)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [pandas绘图plot函数](https://blog.csdn.net/weixin_42322206/article/details/124228797)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

i阿极

你的鼓励是我创作最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值