推移图做法

2022-12-13 17:54:01 美食烹饪 462395次阅读 投稿:ღ各有各的命࿐
最佳答案§ Code# -*- coding: utf-8 -*- import matplotlib.pyplot as pltimport pandas as pd # 导入pandas
推移图做法
§ Code

# -*- coding: utf-8 -*-
import matplotlib.pyplot as plt
import pandas as pd # 导入pandas库,用来读取csv文件,并进行数据处理
from datetime import datetime # 导入datetime库,用来将时间字符串转换为datetime格式的时间戳


def draw_trend(data, title): # 画出股票的走势图

data['date'] = data['date'].apply(lambda x:datetime.strptime(x,'%Y-%m-%d')) # 将时间字符串转换为datetime格式的时间戳

plt.figure(figsize=(20,10)) # 设置图片大小

plt.title(title) # 设置图片标题

plt.xlabel('Date') # 设置X轴坐标名称

plt.ylabel('Price') # 设置Y轴坐标名称

plt.plot_date(data['date'], data['close'], '-', linewidth=1) # 画出K线图,由于数据量太大,所以linewidth=1使得K线图变得平滑一些

for label in ax1.xaxis.get_ticklabels(): # 根据X轴上的刻度值,对X刻度进行旋转45°显得不那么密集

label.set_rotation(45)


if __name__ == '__main__': # 程序入口函数main():读取csv文件数据、处理数据、画出K线图、显示K线图。最后一步是显得KLineChart()中定义的show()方法。在这之前都是在内存中进行处理。show()方法执行之后才会真正将内存中的处理好的数据呈递到matplotlib中去作图。如此便实例化了一个实体化的matplotlib对象。之后就可以通过plt对该实体化matplotlib对象进行保存或者额外信息加工了。最后要明明plt是一个pyplot子库而不是matpotlib本体。如此便胜任了Python+Matpotlib+pyplo三者之间的协作作用。

df = pd.read_csv('stockData/000001SZ_20140101~20191231_.csv') # 读取CSV文件数据并储存在df中 df = df[::] draw_trend(df, '000001SZ Trend Graph 2014~2019') ax1 = plt ax1.set_xticks([]) ax1 .show() 此代代代代
声明:趣学生活所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系nqxyy@nqxyy.com