Plotly⑧(テーブル)

テーブル

Plotlyでテーブル(表)を描画するにはTableクラスを使います。

Tableクラスcells属性およびheader属性には下記のようなオプションを設定します。

  • values
    セルの値(リストなどのデータを渡す)
  • height
    セルの高さ
  • align
    配置:”left”(左詰め)、”center”(中央寄せ)、”right”:(右詰め)
  • line
    width 罫線の太さ
    color 罫線の色
  • fill
    color 塗りつぶし色

次のコードでは、テーブルと折れ線グラフを描画しています。右上のテーブルにはスタイルを設定しています。

[Google Colaboratory]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
import pandas as pd
import plotly.graph_objects as go
from plotly.subplots import make_subplots

table_values = [[10, 20, 30, 40], [34, 15, 27, 8]]
table_labels = ["Label1", "Label2"]
table_fig = make_subplots(
rows=2,
cols=2,
specs=[[{"type": "domain"}, {"type": "domain"}], [{"colspan": 2}, None]],
)
table_fig.add_trace(
go.Table(header={"values": table_labels}, cells={"values": table_values}),
row=1,
col=1,
)
table_fig.add_trace(
go.Table(
cells={
"values": pd.DataFrame(table_values),
"line": {"width": 2, "color": "black"}, # 罫線のスタイル
"fill": {"color": "white"}, # 塗りつぶし色
"align": "right", # 配置
},
header={
"values": table_labels,
"height": 18, # セルの高さ
"line": {"width": 2, "color": "black"},
"fill": {"color": "white"},
"font": {"size": 10}, # フォントサイズ
},
),
row=1,
col=2,
)
table_fig.add_trace(
go.Scatter(x=table_values[0], y=table_values[1]), row=2, col=1
)
table_fig.show()

[実行結果]

cells.values属性の各要素は列の値となります。

pandas.DataFrameを設定する場合には、行列が転置されるためご注意ください。