如何在 Python 中使用 Bokeh 生成 K 線圖?


Bokeh 是一個用於資料視覺化的 Python 包。它是一個開源專案。Bokeh 使用 HTML 和 JavaScript 渲染其繪圖。這表明它在處理基於 Web 的儀表板時非常有用。

Bokeh 可以輕鬆地與 NumPy、Pandas 和其他 Python 包結合使用。它可以用來生成互動式圖表、儀表板等等。

Bokeh 的依賴項 -

Numpy
Pillow
Jinja2
Packaging
Pyyaml
Six
Tornado
Python−dateutil

在 Windows 命令提示符下安裝 Bokeh

pip3 install bokeh

在 Anaconda 提示符下安裝 Bokeh

conda install bokeh

以下是一個示例 -

示例

from math import pi
import pandas as pd
from bokeh.plotting import figure, output_file, show
from bokeh.sampledata.stocks import MSFT
my_df = pd.DataFrame(MSFT)[:35]
my_df["date"] = pd.to_datetime(my_df["date"])

inc = my_df.close > my_df.open
dec = my_df.open > my_df.close
w = 12*60*60*1000
TOOLS = "pan,wheel_zoom,box_zoom,reset,save"
p = figure(x_axis_type="datetime", tools=TOOLS, plot_width=1000, title = "Candlestick using MSFT data")
p.xaxis.major_label_orientation = pi/4
p.grid.grid_line_alpha=0.3

p.segment(my_df.date, my_df.high, my_df.date, my_df.low, color="black")
p.vbar(my_df.date[inc], w, my_df.open[inc], my_df.close[inc], fill_color="#D5E1DD", line_color="black")
p.vbar(my_df.date[dec], w, my_df.open[dec], my_df.close[dec], fill_color="#F2583E", line_color="black")

output_file("candlestick.html", title="candlestick plot")

show(p)

注意 - 要執行此程式碼,需要先安裝 Bokeh,並執行以下命令下載示例資料集。

bokeh.sampledata.download()

輸出

解釋

  • 匯入併為所需的包設定別名。

  • MSFT 資料是 Bokeh 庫中內建的資料集。

  • 它儲存為資料框。

  • 呼叫 figure 函式並設定繪圖寬度和高度。

  • 呼叫 'output_file' 函式以指定將生成的 html 檔案的名稱。

  • 定義 'TOOLS' 屬性。

  • 呼叫 Bokeh 中的 'vbar' 函式以及資料。

  • 使用 'show' 函式顯示繪圖。

更新於: 2021年1月19日

337 次檢視

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告