はじめに
どうしても表をヘッダー組で作りたい。
コード
ヘッダーのデータの置き場が重要。
import streamlit as st
import pandas as pd
from st_aggrid import AgGrid
df = pd.read_csv("tmp.csv")
gridOP={"columnDefs":[{
"headerName":"",
"children":[
{"field":"index",
"pinned":"left"}
]}]}
for i in range(2):
j=i+1
gridOP_ad={
"headerName":"header"+str(j),
"children":[
{"field":"data1_"+str(j)
,"editable":True},
{"field":"data2_"+str(j)}
]
}
gridOP["columnDefs"].append(gridOP_ad)
AgGrid(df,gridOptions=gridOP
,layout="wide"
)
実物
ポイント
グリッドオプションを手作りする。ピボットで作ったデータではじめはやろうとしたが、上手くいかなかった。もとになっているjavaのページをみると参考になるかも。
後日談
ヘッダーのグループ化をするときにちょっと面倒なことをしていたようだ。次回の記事で修正したい。


コメント