Seite 1 von 1

pands style object in tkinter anzeigen

Verfasst: Dienstag 19. Januar 2021, 06:12
von Tobias74
Hallo Zusammen,
ich möchte gerne in einer tkinter GUI ein pandas Dataframe ausgeben.
Das funktioniert auch wunderbar, allerdings hätte ich gerne die Ausgabe als Tabelle mit Rahmen.
Wenn ich df.style nutze, kann das Objekt nicht angezeigt werden. Wie kann ich eine formatierte Tabelle mit Rahmen in
tkinter anzeigen, bzw. das style Objekt anzeigen?

Code: Alles auswählen

import tkinter as tk
import pandas as pd

df=pd.DataFrame({"Spalte1":[1,2,3,4],"Spalte2":[1,4,6,7]})

root = Tk()
root.title("Muster GUI")

frame=LabelFrame(root,text="display dataframe", padx=10, pady=10)
frame.grid(row=0, column=0, padx=10, pady=10)
text=tk.Text(frame, height=10, width=60)
text.grid(row=0,column=0, padx=10)
text.insert("end",df.style)

root.mainloop()


Re: pands style object in tkinter anzeigen

Verfasst: Dienstag 19. Januar 2021, 09:41
von __blackjack__
@Tobias74: Falls da noch niemand anders etwas geschrieben hat, musst Du das wohl selbst programmieren. Da Du das `Styler`-Objekt hier gar nicht veränderst, stellt sich die Frage ob Du es dafür überhaupt brauchst‽

Re: pands style object in tkinter anzeigen

Verfasst: Dienstag 19. Januar 2021, 10:19
von Tobias74
danke dir, ich dachte es gibt vielleicht einen einfachen Trick auf den ich nicht gekommen bin.
Mir geht es nur um die Optik die Ergebnisdaten einer Berechnung übersichtlicher als Tabelle mit Rahmen darzustellen, wie
es auch erfolgt wenn man es nicht über ein Tkinter widget ausgibt.
Gibt es denn eine einfache Alternative oder würdest du das über pandastable lösen?
Vielen Dank und viele Grüße

Re: pands style object in tkinter anzeigen

Verfasst: Dienstag 19. Januar 2021, 12:18
von peterpy
HalloTobias74,
wenn's nicht eine Tabelle sein muss, Tkinter enthält die Listbox.
In dieser kannst Du die Spalten über Stringformatierung einstellen.
Funktioniert aber nur sauber mit nicht proportionalen Schriften.
Gruss Peter