Candlestick-Diagramm in Python anzeigen (Matplotlib-Edition) Es ist eine Fortsetzung von.
Plotly ist kein reines Python-Paket, sondern unterstützt auch R, Matlab, JavaScript usw. Im Online-Modus müssen Sie ein Konto erstellen. Wenn Sie es jedoch offline verwenden möchten, müssen Sie kein Konto erstellen. Das Folgende ist eine Offline-Erklärung.
Die Installation des Python-Pakets von Plotly finden Sie auf dieser Seite (https://plot.ly/python/getting-started/).
$ pip install plotly
Ist in Ordnung.
Erstellen Sie dann wie im vorherigen Artikel (http://qiita.com/toyolab/items/1b5d11b5d376bd542022) fiktive 4-Wert-Daten. Diesmal beziehen sich die Daten jedoch auf ein Jahr.
import numpy as np
import pandas as pd
idx = pd.date_range('2015/01/01', '2015/12/31 23:59', freq='T')
dn = np.random.randint(2, size=len(idx))*2-1
rnd_walk = np.cumprod(np.exp(dn*0.0002))*100
df = pd.Series(rnd_walk, index=idx).resample('B').ohlc()
Die Referenzseite ist hier. Candlestick Charts in Python
Zeigen Sie zunächst das Candlestick-Diagramm mit den Standardeinstellungen an.
from plotly.offline import init_notebook_mode, iplot
from plotly.tools import FigureFactory as FF
init_notebook_mode(connected=True) #Einstellungen für Jupyter Notebook
fig = FF.create_candlestick(df.open, df.high, df.low, df.close, dates=df.index)
iplot(fig)
Übergeben Sie einfach Open Data, High Data, Low Data, Close Data, Datums- und Uhrzeitdaten an das Argument "create_candlestick".
Das Diagramm sieht so aus.
Tatsächlich können Sie das Diagramm frei zoomen und schwenken, sodass Sie es wie unten gezeigt vergrößern können.
Plotlys Diagramme sind als interaktive Diagramme sehr nützlich, aber samstags und sonntags ist immer noch Platz vorhanden, und sie sind an Werktagen nicht durchgehend. Daher werden wir die Daten der x-Achse so bearbeiten, dass nur Werktage fortlaufend sind. Das Verfahren ist das gleiche wie bei matplotlib. Wenn Sie das Argument "Datumsangabe" von "create_candlestick" weglassen, sind die Daten der x-Achse ein ganzzahliger Index. Daher werden die dem Index entsprechenden Datums- und Zeitdaten als x-Achsenskala angezeigt.
fig = FF.create_candlestick(df.open, df.high, df.low, df.close)
xtick0 = (5-df.index[0].weekday())%5 #Erster Montag Index
fig['layout'].update({
'xaxis':{
'showgrid': True,
'ticktext': [x.strftime('%Y-%m-%d') for x in df.index][xtick0::5],
'tickvals': np.arange(xtick0,len(df),5)
}
})
iplot(fig)
Das angezeigte Diagramm sieht wie folgt aus.
Die x-Achsen-Skala wird in wöchentlichen Intervallen angezeigt, ist also etwas in Ordnung, aber es ist einfacher zu erkennen, ob Sie hineinzoomen.
Sie können sehen, dass dies nur für Werktage ein Candlestick-Diagramm ist.
Recommended Posts