怎么给pyecharts生成的表格增加滚动条

我在用pyecharts制作网页表格时,面临如下问题:

  • 当表格的列数比较多时,会溢出页面右边框,十分不雅观。

  • 不想抛弃pyecharts带来的便捷。

于是经过查询,找到了解决办法,见下文。

问题描述

当我们使用pyechartstable类来创建表格,嵌入到网页中时,发现表格数据会右溢出,滚动条出现在最下面,严重影响了页面的美观和整洁。

我们希望滚动条出现在表格处、而不是页面底部,即希望表格可以滑动显示。

解决办法

pyechartsgithub上查找该问题,发现有人曾经提出过见此处,该问题的回答没有详细说怎么解决,只是提到了需要修改macro模版。

鉴于没有找到更好解决办法,于是动手修改了模块的宏文件。我安装的版本为pyecharts==2.0.2python==3.8.5。具体修改如下:

找到安装包所在路径:

venv -> lib -> lib -> python3.8 -> site-packages -> pyecharts -> render -> templates -> macro

打开macro文件,寻到table相关的style,在176行的.fl-table里增加两行:

display: block;
overflow: scroll;

即变为

.fl-table {
margin: 20px;
border-radius: 5px;
font-size: 12px;
border: none;
border-collapse: collapse;
max-width: 100%;
white-space: nowrap;
word-break: keep-all;
display: block;
overflow: scroll;
}

然后重启项目,再次生成html文件,新生成的表格页面就限定为页面的大小,可以通过滚动条来拖动观看后续表格了。

如有服务器,在服务器上也进行相同操作。