我已经读过this,但是对于使用pandas.DataFrame.to_html
时如何设置列宽仍然感到困惑。
import datetime
import pandas
data = {'Los Angles': {datetime.date(2018, 9, 24): 20.5, datetime.date(2018, 9, 25): 1517.1},
'London': {datetime.date(2018, 9, 24): 0, datetime.date(2018, 9, 25): 1767.4},
'Kansas City': {datetime.date(2018, 9, 24): 10, datetime.date(2018, 9, 25): 1.4}}
df = pandas.DataFrame(data=data)
html = df.to_html()
如何强制将列宽设置为相同?
答案 0 :(得分:2)
尝试一下:
import datetime
import pandas
data = {'Los Angles': {datetime.date(2018, 9, 24): 20.5, datetime.date(2018, 9, 25): 1517.1},
'London': {datetime.date(2018, 9, 24): 0, datetime.date(2018, 9, 25): 1767.4},
'Kansas City': {datetime.date(2018, 9, 24): 10, datetime.date(2018, 9, 25): 1.4}}
df = pandas.DataFrame(data=data)
pandas.set_option('display.max_colwidth', 40)
html = df.to_html()
答案 1 :(得分:2)
我发现最好使用set_table_attributes函数。 然后,您可以进行设置表格的CSS类。如果输出中有很多表,那么可读性会更好。
import datetime
import pandas
data = {'Los Angles': {datetime.date(2018, 9, 24): 20.5, datetime.date(2018, 9, 25): 1517.1},
'London': {datetime.date(2018, 9, 24): 0, datetime.date(2018, 9, 25): 1767.4},
'Kansas City': {datetime.date(2018, 9, 24): 10, datetime.date(2018, 9, 25): 1.4}}
df = pandas.DataFrame(data=data)
html = df.set_table_attributes('class="table-style"').to_html()
您的CSS可能如下所示:
.table-style {
width: 100%;
}
.table-style td {
width: 100px;
}
答案 2 :(得分:0)
您现在可以设置 to_html
的 col_space 参数df.to_html(col_space='75px')