Ich bin neu in Tkinter. Ich habe ein paar Widgets von Tkinter ausprobiert, finde aber keine geeignete Möglichkeit, einen Datenrahmen anzuzeigen.Python: Wie man einen Datenrahmen mit Tkinter anzeigen
Ich versuchte Tkinter.Text
. Ich habe update()
anstelle von mainloop()
verwendet, weil ich df
aktualisieren und wieder anzeigen möchte. mainloop()
wird mein Programm blockieren. Das Problem mit diesem Ansatz ist, dass wenn die wird groß, es kann nicht vollständig angezeigt werden.
import pandas
import numpy as np
import Tkinter
root = Tkinter.Tk()
t1 = Tkinter.Text(root)
t1.pack()
df = pandas.DataFrame(np.random.randn(900,2),columns=list('AB'))
t1.insert('end', df)
root.update()
Ich versuchte auch Tkinter.Lablel
. Es fügt Einträge der df
nacheinander ein, was sehr langsam ist.
from Tkinter import *
for i in range(900):
for j in range(4):
l = Label(text='%d.%d' % (i, j), relief=RIDGE)
l.grid(row=i, column=j, sticky=NSEW)
mainloop()
Was ist der einfachste Weg, um einen Datenrahmen anzuzeigen (keine Bearbeitung erforderlich)? Um genau zu sein, sollte es mehr oder weniger wie ein Excel-Tabellenblatt mit Bildlaufleisten aussehen und erlauben, dass die angezeigte df
aktualisiert und wieder angezeigt werden kann. Auch sollte es nicht zu lange dauern, wenn df
Hunderte von Zeilen hat.
Vielen Dank.
Willkommen bei SO. Obwohl Ihre Frage in Ordnung klingt, würde ich empfehlen, Ihre Bedürfnisse in der unteren Frage zusammenzufassen (das Wort "nett" ist zu vage). Freundliche Grüße. – YakovL
@YakovL danke für den Rat. Ich fügte meine Bedürfnisse am Ende der Frage hinzu. – Pollyanna
Sieht aus wie [this] (https://github.com/dmnfarrell/pandastable) genau das tut, was Sie wollen. – chthonicdaemon