我想在不使用“默認 ohlc 資料”的情況下繪制一條線。在這種情況下,我使用的是Github中的資料。
我怎樣才能做到這一點?
import pandas as pd
import mplfinance as mpf
import matplotlib.animation as animation
import numpy as np
path_ = 'C:\Mypath'
intraday = pd.read_csv(path_ 'SP500_NOV2019_IDay.csv',index_col=0,parse_dates=True)
intraday.index.name = 'Date'
# mpf.plot(intraday,type='line') #ohlc DataFrame.. ok
int_Low = intraday.loc[:,'Low'] #non ohlc DataFrame
mpf.plot(data=int_Low,type='line') #doesn't work
uj5u.com熱心網友回復:
不幸的是,就像現在的 mplfinance 一樣,在繪圖type='line'時mpf.plot(data,type='line'),默認情況下將使用“關閉”列。
一種可能的解決方法是將您的“低”資料放入“關閉”列。
df = pd.read_csv('examples/data/SP500_NOV2019_IDay.csv',index_col=0,parse_dates=True)
df['RealClose'] = df['Close'].values # save close values in case want them later
df['Close'] = df['Low'].values # set 'Close' column to low values
mpf.plot(df,type='line') # plot 'Low' as a line
另一種解決方案可能是增強 mplfinance 以接受名為use_column. 然后,例如,可以簡單地寫:
df = pd.read_csv('examples/data/SP500_NOV2019_IDay.csv',index_col=0,parse_dates=True)
mpf.plot(df,type='line',use_column='Low')
這種增強相對容易實作(只需幾行代碼)。如果您有興趣為 mplfinance 做出貢獻,請在下面的評論中告訴我。全面披露:我是 mplfinance 的維護者。
uj5u.com熱心網友回復:
似乎 mplfinance 是圍繞基本 OHLC 圖設計的。制作低線的一種方法是將其添加到圖表中:
lowline = mpf.make_addplot(intraday['Low'], type='line')
mpf.plot(intraday, addplot=lowline)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/433237.html
標籤:Python 熊猫 matplotlib 财务
