zl程序教程

您现在的位置是:首页 >  Python

当前栏目

手把手教你用Python直观查看贵州茅台股票交易数据

2023-04-18 14:54:53 时间

如图1所示是网易财经展示的贵州茅台股票的历史交易数据。

图1

单击“下载数据”超链接,会弹出如图2所示的对话框,选择完成后单击“下载”按钮就可以下载数据了,所下载的数据是CSV格式。

图2

CSV(Comma-Separated Values)是以逗号分隔数据项(也被称为字段)的数据交换格式,主要应用于电子表格和数据库之间的数据交换。

提示:CSV 是文本文件,可以使用记事本等文本编辑器打开,如图2-5所示,还可以使用Excel打开,如图2-6所示。另外,可以将Excel中的电子表格另存为CSV文件,但这可能会导致数据格式丢失,例如CSV文件中的"0001"数据使用Excel打开会变为1。在Windows平台上,默认的字符集是GBK,要想使用Excel打开CSV文件且不乱码,就需要将CSV文件保存为GBK字符集。

图3

该折线图的实现代码如下:

#  coding=utf-8
# 代码文件:chapter6/ch6.2.6.py

import matplotlib.pyplot as plt
import pandas as pd

plt.rcParams['font.family'] = ['SimHei']    # 设置中文字体
plt.rcParams['axes.unicode_minus'] = False   # 设置负号正常显示

plt.figure(figsize=(15, 5))

f = r'data股票的历史交易数据.xlsx'


df = pd.read_excel(f)

df2 = df.query("Date >='2021-03-01' and Date < '2021-04-01'").sort_values(by='Date')  ①

# 绘制折线
plt.plot(df2['Date'], df2['Volume'])            ②

plt.title('贵州茅台股票')
plt.ylabel('成交量')                      # 添加y轴标题
plt.xlabel('交易日期')                    # 添加x轴标题
plt.xticks(rotation=40)
plt.show()

代码解释如下。

  • 第①行通过指定时间段来查询数据,并按照'Date'字段排序。
  • 第②行通过plt.plot函数绘制折线,其中df2['Date']是x轴数据,df2['Volume']是y轴数据。

图 4

该折线图的实现代码如下:

#  coding=utf-8
# 代码文件:chapter6/ch6.2.7.py

import matplotlib.pyplot as plt
import pandas as pd

plt.rcParams['font.family'] = ['SimHei']       # 设置中文字体
plt.rcParams['axes.unicode_minus'] = False    # 设置负号正常显示

plt.figure(figsize=(15, 5))

f = r'data股票的历史交易数据.xlsx'

df = pd.read_excel(f)

df2 = df.query("Date >='2021-03-01' and Date < '2021-04-01'").sort_values(by='Date')

plt.title('贵州茅台股票历史OHLC折线图')
plt.plot(df2['Date'], df2['Open'], label='开盘价')     ①
plt.plot(df2['Date'], df2['High'], label='最高价')
plt.plot(df2['Date'], df2['Low'], label='最低价')
plt.plot(df2['Date'], df2['Close'], label='收盘价')    ②

plt.ylabel('成交量')
plt.xlabel('交易日期')
plt.xticks(rotation=40)

plt.show()

代码解释如下。

第①行和第②行绘制了4个折线图,label参数用于设置在图例中显示的折线标签。

至此,我们便可以直观地看到茅台一个月内的历史股票交易数据啦!