如何在 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' 函数显示绘图。
广告