量化筆記:matplotlib繪制K線圖、成交量的組合圖


參考:https://blog.csdn.net/u014281392/article/details/73611624

import matplotlib.pyplot as plt ## 導入畫圖模塊
from matplotlib.pylab import date2num ## 導入日期到數值一一對應的轉換工具
from dateutil.parser import parse ## 導入轉換到指定格式日期的工具
import mpl_finance as mpf ## 導入 mpl_finance 模塊
import tushare as ts
from matplotlib.pylab import date2num
import datetime
code = '000001'
wdyx = ts.get_k_data(code,start='2019-10-01', end='2020-01-01')
#         日期,   開盤,     收盤,    最高,      最低,   成交量,    代碼
print(wdyx[:3])

def date_to_num(dates):
    num_time = []
    for date in dates:
        date_time = datetime.datetime.strptime(date,'%Y-%m-%d')
        num_date = date2num(date_time)
        num_time.append(num_date)
    return num_time
# dataframe轉換為二維數組
mat_wdyx = wdyx.iloc[:,:].values
num_time = date_to_num(mat_wdyx[:,0])
mat_wdyx[:,0] = num_time
print(mat_wdyx[:3])
# 主要參數介紹:
# ax:Axes(軸)對象或Axes(軸)對象數組
# quotes:是傳入的數據,數據的前五列要保持和函數規定的一樣
# colorup:表示收盤價格>=開盤價格,其圖表設置的顏色
# colordown:表示收盤價格<開盤價格,其圖表設置的顏色
fig, (ax1, ax2) = plt.subplots(2,figsize=(15,8))
mpf.candlestick_ochl(ax1, mat_wdyx, width=0.6, colorup='g', colordown='r', alpha=1.0)
# 設置日期刻度旋轉的角度
# ax1.xticks(rotation=30)
ax1.set_title(code)
ax1.set_ylabel('Price')
ax1.grid(True)
# x軸的刻度為日期
ax1.xaxis_date ()
plt.bar(mat_wdyx[:,0]-0.25, mat_wdyx[:,5], width= 0.5)
ax2.set_ylabel('Volume')
# x軸的刻度為日期
ax2.xaxis_date()
ax2.grid(True)
plt.show()

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM