使用 Dash 在 Julia 中格式化 HTML 个表格

Formatting HTML tables in Julia with Dash

我正在尝试在 Julia 中使用 Dash 格式化 HTML table。基于 Julia Plotly page 中的第三个示例,我正在使用“generate_table”函数:

function generate_table(dataframe, max_rows = size(dataframe)[1])
    html_table([
    html_thead(html_tr([html_th(col) for col in names(dataframe)])),
    html_tbody([
        html_tr([html_td(dataframe[r, c]) for c in names(dataframe)]) for r = 1:min(nrow(dataframe), max_rows)]),
    ])
end

并使用数据框调用此函数,巧妙地称为“df”:

generate_table(df)

这工作正常,但结果 table 被推到网页的左侧。 如何设置 table 的样式使其在页面上居中?

我尝试使用 Python 中的 定义 html_table 的 style,使用 style="text-align:center"style=["text:align:center"] at the end of the html_table` 标签,如下例所示。由于 Julia 不再使用大括号,我将 Python 示例中的大括号更改为圆括号和方括号(并且根本没有括号),但仍然没有找到解决方案。

function generate_table(dataframe, max_rows = size(dataframe)[1])
    html_table([
    html_thead(html_tr([html_th(col) for col in names(dataframe)])),
    html_tbody([
        html_tr([html_td(dataframe[r, c]) for c in names(dataframe)]) for r = 1:min(nrow(dataframe), max_rows)]),
    ], style="text-align:center")
end

这个 generate_table 函数在生成的页面上给我这个错误:

我已经尝试寻找基于 Julia 的示例来说明如何设置这些 table 的样式,但我没有找到太多。

样式参数——就像所有类似键值的参数一样——作为字典传递。像 {'text-align': 'center'} 这样的 python dict 的音译是 Dict:

style = Dict("text-align"=>"center")

请注意,您也可以使用 NamedTuples 来获得更简洁的 shorthand,但破折号不是有效的 Julia 标识符,因此您改为使用驼峰式:

style = (textAlign="center",) # The comma is important!