利用python进行数据分析数据_利用Python进行数据分析

本文介绍了如何利用Python进行数据可视化,包括在Subplot上添加注释、绘制图表,如线型图、柱状图、直方图和散布图。重点讲述了matplotlib库的使用,如自定义图形、保存图表、配置图表样式,以及pandas中的绘图函数,让数据可视化更加高效和便捷。此外,还提到了Python图形化生态中的其他工具,如Chaco、mayavi等。
摘要由CSDN通过智能技术生成

1、注释以及在Subplot上绘图

除标准的图表对象之外,你可能还希望绘制一些自定义的注释(比如文本、箭头或其他图形等)。

注释可以通过text、arrow和annotate等函数进行添加。text可以将文本绘制在图表的指定坐标(x, y),还可以加上一些自定义格式:

In [41]: ax.text(x, y, ‘Hello world!‘, family=‘monospace‘, fontsize=10)注解中可以既含有文本也含有箭头。例如,我们根据2007年以来的标准普尔500指数收盘价格(来自Yahoo! Finance)绘制一张曲线图,并标出2008年到2009年金融危机期间的一些重要日期。如下所示:

from datetime import datetime

fig = plt.figure()

ax = fig.add_subplot(1, 1, 1)

data = pd.read_csv(‘ch08/spx.csv‘, index_col=0, parse_dates=True)

spx = data[‘SPX‘]

spx.plot(ax=ax, style=‘k-‘)

crisis_data = [

(datetime(2007, 10, 11), ‘Peak of bull market‘),

(datetime(2008, 3, 12), ‘Bear Stearns Fails‘),

(datetime(2008, 9, 15), ‘Lehman Bankruptcy‘)

]

for date, label in crisis_data:

ax.annotate(label, xy=(date, spx.asof(date) + 50),

xytext=(date, spx.asof(date) + 200),

arrowprops=dict(facecolor=‘black‘),

horizontalalignment=‘left‘, verticalalignment=‘top‘)

# Zoom in on 2007-2010

ax.set_xlim([‘1/1/2007‘, ‘1/1/2011‘])

ax.set_ylim([600, 1800])

ax.set_title(‘Important dates in 2008-2009 financial crisis‘)图像的绘制要麻烦一些。matplotlib有一些表示常见图形的对象。这些对象被称为块(patch)。其中有些可以在matplotlib.pyplot中找到(如Rectangle和Circle),但完整集合位于matplotlib.patches。

要在图表中添加一个图形,你需要创建一个块对象shp,然后通过ax.add_patch(shp)将其添加到subplot中。

fig = plt.figure()

ax = fig.add_subplot(1, 1, 1)

rect = plt.Rectangle((0.2, 0.75), 0.4, 0.15, color=‘k‘, alpha=0.3)

circ = plt.Circle((0.7, 0.2), 0.15, color=‘b‘, alpha=0.3)

pgon = plt.Polygon([[0.15, 0.15], [0.35, 0.4], [0.2, 0.6]], color=‘g‘, alpha=0.5)

ax.add_patch(rect)

ax.add_patch(circ)

ax.add_patch(pgon)

说明:

如果查看许多常见图表对象的具体实现代码,你就会发现它们其实就是由块组装而成的。

2、将图表保存到文件

利用plt.savefig可以将当前图表保存到文件。该方法相当于Figure对象的实例方法savefig。例如,要将图表保存为SVG文件ÿ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值