Bokeh 显示 pandas 数据帧
在本文中,我们将介绍如何使用 Bokeh 在网页上显示 pandas 数据帧。Bokeh 是一个用于交互式可视化的 Python 库,它可以用于创建漂亮而功能丰富的图表和图形。
阅读更多:Bokeh 教程
安装 Bokeh 和 pandas
首先,我们需要安装 Bokeh 和 pandas。在命令行中运行以下命令来安装这两个库:
pip install bokeh pandas
安装完成后,我们可以导入这两个库,并开始生成我们的数据。
生成示例数据
为了演示如何使用 Bokeh 显示 pandas 数据帧,我们将生成一个简单的示例数据集。假设我们正在研究某个公司在过去一年内的销售数据。以下是一个包含销售日期、销售额和销售量的示例数据帧:
import pandas as pd
import numpy as np
np.random.seed(0)
dates = pd.date_range(start='2022-01-01', end='2022-12-31')
sales = pd.DataFrame({
'Date': dates,
'Revenue': np.random.randint(1000, 10000, len(dates)),
'Quantity': np.random.randint(50, 200, len(dates))
})
sales.head()
运行以上代码,我们将生成一个包含日期、销售额和销售量的示例数据帧。
使用 Bokeh 显示数据帧
接下来,我们将使用 Bokeh 来显示上述生成的示例数据。Bokeh 提供了一个名为 ColumnDataSource
的数据结构,用于将数据传递给 Bokeh 图表。
from bokeh.plotting import figure, show
from bokeh.io import output_notebook
from bokeh.models import NumeralTickFormatter
output_notebook()
p = figure(title='Sales Data', x_axis_type='datetime', plot_width=800, plot_height=400)
p.line(x='Date', y='Revenue', legend_label='Revenue', line_color='blue', source=sales)
p.line(x='Date', y='Quantity', legend_label='Quantity', line_color='red', source=sales)
p.yaxis.formatter = NumeralTickFormatter(format="$0,0")
p.legend.location = "top_left"
show(p)
使用以上代码,我们将生成一个 Bokeh 图表,其中包含了按日期绘制的销售额和销售量的折线图。通过指定 x 轴类型为 datetime
,我们可以确保日期以正确的形式显示在图表上。
自定义图表
Bokeh 提供了许多自定义选项,使我们能够创建漂亮且具有吸引力的图表。例如,我们可以调整图表的大小、添加坐标轴标签、修改颜色和线型等。下面是一个示例代码,演示了一些自定义选项的使用:
p.title.text_color = 'navy'
p.title.text_font_size = '18pt'
p.xaxis.axis_label = 'Date'
p.yaxis.axis_label = 'Amount'
p.ygrid.grid_line_color = 'gray'
p.xgrid.grid_line_color = 'gray'
p.xgrid.grid_line_dash = 'dashed'
p.ygrid.grid_line_dash = 'dashed'
show(p)
通过这些自定义选项,我们可以使图表更加美观和易于理解。
总结
在本文中,我们介绍了如何使用 Bokeh 在网页上显示 pandas 数据帧。通过 Bokeh 提供的丰富功能和自定义选项,我们可以创建漂亮而交互式的数据可视化图表。希望本文对你使用 Bokeh 进行数据可视化有所帮助!