《利用Python进行数据分析》第8章 绘图和可视化笔记

本文详细介绍了matplotlib库在Python数据分析可视化中的应用,包括Figure和Subplot的使用,颜色、标记和线型的设定,刻度、标签、图例的添加,以及如何保存图表。此外,还探讨了pandas中的绘图函数,如线型图、柱状图、直方图和密度图,以及如何创建散布图,帮助读者深入理解数据可视化过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

matplotlib绘图和可视化

matplotlib是一个用于创建出版质量图表的桌面绘图包(主要是2D方面)。绘图是数据分析工作中最重要的任务之一,是探索过程的一部分。

import matplotlib.pyplot as plt
from pandas import Series,DataFrame
import pandas as pd
import numpy as np
from numpy.random import randn
plt.plot(np.arange(15))
plt.show()

png

Figure和Subplot

fig=plt.figure()
ax1=fig.add_subplot(2,2,1)
ax2=fig.add_subplot(2,2,2)
ax3=fig.add_subplot(2,2,3)
plt.plot(np.random.randn(50).cumsum(),'k--')
“k–”是一个线型选项,用于告诉matplotlib绘制黑色虚线图。上面那些由fig.add_subplot所返回的对象是AxesSubplot对象,直接调用它们的实例方法就可以在其他空着的格子里面画图
_=ax1.hist(np.random.randn(100),bins=20,color='r',alpha=0.3)
ax2.scatter(np.arange(30),np.arange(30)+3*np.random.randn(30))
plt.show()

png

plt.subplots,它可以创建一个新的Figure,并返回一个含有已创建的subplot对象的NumPy数组

fig,axes=plt.subplots(2,3)
axes
array([[<matplotlib.axes._subplots.AxesSubplot object at 0x0000000012981F98>,
        <matplotlib.axes._subplots.AxesSubplot object at 0x0000000012835FD0>,
        <matplotlib.axes._subplots.AxesSubplot object at 0x00000000129EAFD0>],
       [<matplotlib.axes._subplots.AxesSubplot object at 0x000000001298C9B0>,
        <matplotlib.axes._subplots.AxesSubplot object at 0x00000000127EDA20>,
        <matplotlib.axes._subplots.AxesSubplot object at 0x00000000125DBEB8>]], dtype=object)

这里写图片描述

调整subplot周围的间距

Figure的subplots_adjust方法可以修改间距

#subplots_adjust(left=None,bottom=None,right=None,top=None,wpace=None,hspace=None)
fig,axes=plt.subplots(2,2,sharex=True,sharey=True)
for i in range(2):
    for j in range(2):
        axes[i,j].hist(randn(500),bins=50,color='k',alpha=0.6)

plt.subplots_adjust(wspace=0,hspace=0)
plt.show()

png

颜色、标记和线型

matplotlib的plot函数接受一组X和Y坐标,还可以接受一个表示颜色和线型的字符串缩写

ax.plot(x,y,'g--')  #根据x和y绘制绿色虚线
ax.plot(x,y,linestyle='--',color='g')
plt.plot(np.random.randn(30).cumsum(),'ko--')
plt.show()

png

可以把它写成更为明确的方式

plt.plot(np.random.randn(30).cumsum(),color='b',linestyle='dashed',marker='o')
plt.show()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值