PythonとBokehを使ってCSVをテーブル表示する方法

まくまく
まくまく
データ可視化ライブラリBokehの使い方を学びます。今回はcsvファイルを読み込んで、それをテーブルで表示してみようと思います。



csvを読み込んでテーブル表示する方法

from bokeh.models import ColumnDataSource
from bokeh.models.widgets import DataTable, TableColumn
from bokeh.plotting import show
import pandas as pd

df = pd.read_csv('test.csv')

source = ColumnDataSource(df)

columns = [TableColumn(field = column ,title= column) for column in df.columns]

data_table = DataTable(source = source, columns = columns ,width=500, height=500, fit_columns=True)

show(data_table)



↑HTMLで書き出しているので、値をクリックできます。

グラフも同時に表示する場合

from bokeh.models import ColumnDataSource
from bokeh.models.widgets import DataTable, TableColumn
from bokeh.plotting import show
from bokeh.plotting import figure
from bokeh.transform import factor_cmap
from bokeh.palettes import Spectral6
from bokeh.layouts import row
import pandas as pd

df = pd.read_csv('test.csv',header=0)

source = ColumnDataSource(df)

columns = [TableColumn(field = column ,title= column) for column in df.columns]

data_table = DataTable(source = source, columns = columns ,width=500, height=500, fit_columns=True)

x = df[df.columns[0]]
y = df[df.columns[1]]

p = figure(title="Glyphs properties example", x_axis_label="x", y_axis_label="y",width=500, height=500)

circle = p.circle(
    x,
    y,
    legend_label="Objects",
    fill_color="red",
    fill_alpha=0.5,
    line_color="blue",
    size=80,
)

glyph = circle.glyph
glyph.fill_color = "blue"

layout = row(data_table, p)
show(layout)

A列のデータで散布図を作成してみました。このようにテーブルの横にグラフを表示することも可能です。

created by Rinker
シーアンドアール研究所
タイトルとURLをコピーしました