Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Vẽ nhiều biểu đồ cột (multiple bar plots) với Bokeh trong Python

Bokeh cho phép vẽ biểu đồ cột nhóm (grouped bar chart) bằng cách dùng dodge để dịch chuyển vị trí cột.

Cài đặt

pip3 install bokeh
conda install bokeh

Ví dụ: Ba nhóm cột


from bokeh.plotting import figure, output_file, show
from bokeh.transform import dodge

labs = ['label_1', 'label_2', 'label_3']
my_data = {
    'labs': labs,
    'val_1': [2, 5, 11],
    'val_2': [34, 23, 1],
    'val_3': [25, 34, 23]
}

fig = figure(x_range=labs, plot_width=300, plot_height=300)
fig.vbar(x=dodge('labs', -0.25, range=fig.x_range), top='val_1', width=0.2, source=my_data, color="green")
fig.vbar(x=dodge('labs', 0.0, range=fig.x_range), top='val_2', width=0.2, source=my_data, color="cyan")
fig.vbar(x=dodge('labs', 0.25, range=fig.x_range), top='val_3', width=0.2, source=my_data, color="blue")

show(fig)

Kết quả

Vẽ nhiều biểu đồ cột (multiple bar plots) với Bokeh trong Python

Giải thích

  • Dữ liệu đặt trong dict, key labs là nhãn trục X.
  • dodge('labs', offset, range=fig.x_range) dịch cột trái/phải.
  • Mỗi vbar vẽ một nhóm màu khác nhau.

Mở rộng: Thêm HoverTool để hiện giá trị khi di chuột.