最近学习Python,记录作业代码,以便后续查阅。今天顺便把效果图贴上好了。
1、漲跌幅为今日Adj Close-昨日AdjClose)/昨日Adj Close,日期為x軸,漲跌幅為y軸,畫出折線圖
import numpy as np
import pandas as pd
import matplotlib.dates as mdates #處理日期
import matplotlib.pyplot as plt
#讀入數據
df = pd.read_csv('AAPL.csv')
x = df['Date']
x = pd.to_datetime(x) #轉換為日期,否則下面的日期設置不會生效
y = df['Adj Close'].pct_change() * 100 #計算變化的百分比,這個方法很方便
y[0] = 0 #將第一條缺失值填充為0,作為起點
#plt.gca()函數獲得當前坐標軸,然後才能設置參數或作圖,plt.plot()內部實現了這一步驟
plt.gca().xaxis.set_major_formatter(mdates.DateFormatter('%Y-%m')) #設置x軸主刻度顯示格式(日期)
plt.gca().xaxis.set_major_locator(mdates.MonthLocator(interval=2)) #設置x軸主刻度間距
plt.xlabel("Date")
plt.ylabel('Change Rate(%)')
plt.title('Apple Stock Trend')
plt.plot(x,y)