我有一个大的(垂直的)pandas 数据框,我想将其显示为带有滚动条的漂亮表格。我可以让它显示包含所有行的表格,但我无法显示滚动条。
def data(x):
strData = strData[['Data1','Data2','Data3']]
display(strData)
输出:没有垂直滚动条
原文由 magicsword 发布,翻译遵循 CC BY-SA 4.0 许可协议
我有一个大的(垂直的)pandas 数据框,我想将其显示为带有滚动条的漂亮表格。我可以让它显示包含所有行的表格,但我无法显示滚动条。
def data(x):
strData = strData[['Data1','Data2','Data3']]
display(strData)
输出:没有垂直滚动条
原文由 magicsword 发布,翻译遵循 CC BY-SA 4.0 许可协议
另一个答案对我不起作用 - IPython.OutputArea
似乎不再存在(据我所知,至少在 VSCode 中不存在并且基于 IPython 代码)。
我设法使 DataFrame 可滚动,方法是为 DataFrame 生成 HTML 表,然后 将其放入 div
中,这可以使用 CSS 使其可滚动。在这种情况下,我们真正需要做的就是将高度设置为某个像素值。
我们还可以将溢出设置为 auto
并将宽度设置为 fit-content
这样滚动条就出现在 DataFrame 的旁边,而不是一直出现在窗口的右侧。
import pandas as pd
from IPython.display import display, HTML
df = pd.DataFrame([(i, i) for i in range (20)])
pd.set_option("display.max_rows", None)
# Puts the scrollbar next to the DataFrame
display(HTML("<div style='height: 200px; overflow: auto; width: fit-content'>" +
df.style.render() +
"</div>"))
# Puts the scrollbar on the right side of the window
display(HTML("<div style='height: 200px'>" + df.style.render() + "</div>"))
演示:
原文由 Bernhard Barker 发布,翻译遵循 CC BY-SA 4.0 许可协议
2 回答5.2k 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
4 回答1.4k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
3 回答1.2k 阅读✓ 已解决
2 回答860 阅读✓ 已解决
1 回答1.7k 阅读✓ 已解决
不确定这是否是您的意思,但我想您需要将
max_rows
选项设置为 None,这样 pandas 就不会限制显示的行数:_更新_: