Python Plotly – benutzerdefinierte Daten, die alle Spalten am ersten Index speichern und durch Kommas trennenPython

Python-Programme
Guest
 Python Plotly – benutzerdefinierte Daten, die alle Spalten am ersten Index speichern und durch Kommas trennen

Post by Guest »

Immer wenn ich mehr als eine Spalte zu meinen benutzerdefinierten Daten hinzufüge, werden die Daten im ersten Index (benutzerdefinierte Daten[0]) gespeichert und durch Kommas getrennt, anstatt sie auf verschiedene Indizes zu verteilen. Jeder Verweis auf die anderen Indizes zeigt den wörtlichen Text an (z. B. wird beim Aufruf von %{customdata[1]} nur %{customdata[1]} selbst angezeigt.)
Außerdem, wann immer ich es versuche Um die Daten zu formatieren (z. B. $%{customdata[0]:,.2f}). Wenn Customdata mehrere Eingaben hat, werden die Daten in NaN umgewandelt.
Wie kann ich sicherstellen, dass Daten werden auf die anderen Indizes verteilt?
Ist das überhaupt der richtige Ansatz/die richtige Syntax, um meine Daten an den Hover-Text zu übergeben?
Kontext:
Ich erstelle ein Donut-Diagramm mit Plotly Express und verwende Pandas um ihm Daten aus meiner Tabelle zu übergeben. Ich möchte zusätzliche Informationen anzeigen, wenn ich mit der Maus über jeden Teil des Diagramms fahre, indem ich Hovertext verwende. Ich mache das, indem ich die Spalten der Tabelle als benutzerdefinierte Daten unter der Funktion „update_traces“ übergebe und sie in der Hovertemplate referenziere.

Code: Select all

    exceldf = pd.read_excel('spreadsheetname.xlsx', sheet_name='Transaction', usecols='B:H', skiprows=4)
exceldf = exceldf.dropna(how='any')

donutchart = px.pie(
exceldf,
names='Ticker',
values='Weight',
hole=0.5,
)

donutchart.update_traces(
customdata=exceldf[['Live Price', 'Purchase Price', 'Quantity']].to_numpy(),
hovertemplate='Customdata[0]: %{customdata[0]}
Customdata[1]: %{customdata[1]}
Customdata[2]: %{customdata[2]}'
)
Ich habe versucht, dies zu korrigieren, indem ich:
-Customdata in ein Numpy-Array geändert habe (keine Änderung)
-Überprüfen, ob die Datentypen der Spalten korrekt waren ( diese 3 sind Floats)
-Verwendung von hover_data anstelle von hovertemplate (gibt mir einen mehrdeutigen Eingabefehler)

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post