【问题标题】:How to linked scrollbar horizontal for pandas data in tkinter如何在 tkinter 中为熊猫数据链接水平滚动条
【发布时间】:2021-12-22 16:19:20
【问题描述】:

我目前正在使用 tkinter 制作一个带有 GUI 的 python 应用程序,用于在 pandas 中进行数据操作。我想显示所有数据(列和行)并给出垂直和水平滚动条。

为了显示所有列和行,我尝试过:

pd.set_option("display.max_rows", None, "display.max_columns", None)

它的工作。并且滚动条也在应用程序中成功显示(我正在使用 tkinter 和网格来放置组件)。但是如果列高于文本小部件宽度,pandas 将显示符号反斜杠,不适合小部件宽度的列将显示在较低的数据中like this

如何让我的 pandas 数据可以在水平滚动条中链接?这是我关于滚动条小部件的代码

fr_isi_file = tk.Frame(fr_list_judul_isi_file, 边框=2, 浮雕=tk.GROOVE) lbl_title_isi_file = tk.Label(fr_isi_file, text="Isi 文件”,宽度=75)fr_isi_file.grid(行=0,列=1, sticky=upper_center) lbl_title_isi_file.grid(row=0, column=0, padx=1, pady=1)

lbl_isi_file = tk.Text(fr_isi_file, 宽度 = 100, 高度 = 10, wrap=None) lbl_isi_file_sb_v = 滚动条(fr_isi_file,orient=VERTICAL) lbl_isi_file_sb_h = 滚动条(fr_isi_file,orient=HORIZONTAL) lbl_isi_file.grid(行 = 1,列 = 0,pady = 10,padx = 10) lbl_isi_file_sb_v.grid(行=1,列=1,粘性=NS) lbl_isi_file_sb_h.grid(行=2,列=0,粘性=EW) lbl_isi_file.config(yscrollcommand=lbl_isi_file_sb_v.set) lbl_isi_file.config(xscrollcommand=lbl_isi_file_sb_h.set) lbl_isi_file_sb_v.config(command=lbl_isi_file.yview) lbl_isi_file_sb_h.config(command=lbl_isi_file.xview)

抱歉我的英语不好和我在这篇文章中的写作。

*注意,我已经搜索了 2 天,但没有得到解决方案

*更新, 我试过了

'expand_frame_repr',假

那就是显示所有列,但不适合小部件的列显示在第二行,like this

谢谢你:)

【问题讨论】:

    标签: python pandas tkinter scrollbar


    【解决方案1】:

    您需要将expand_frame_repr 设置为False

    pd.set_option('max_rows', None, 'max_columns', None, 'expand_frame_repr', False)
    

    【讨论】:

    • 感谢您的建议,我之前尝试过并显示所有列,但不适合小部件的列显示在第 2 行。
    • @DiazAdi 创建Text小部件时需要设置wrap='none',即lbl_isi_file = tk.Text(..., wrap='none')
    • 太棒了!!!是工作!!我的代码有我找到的那个脚本,但在另一个教程中它是 wrap=None 并且什么也没发生。非常感谢你:)
    猜你喜欢
    • 1970-01-01
    • 2018-03-11
    • 2018-08-28
    • 2012-09-05
    • 2017-06-26
    • 1970-01-01
    • 2012-09-16
    • 2021-05-23
    • 2021-12-12
    相关资源
    最近更新 更多