Heim > Web-Frontend > CSS-Tutorial > Wie färbe ich Text und Hintergründe in einer Pandas Dataframe-HTML-Tabelle ein?

Wie färbe ich Text und Hintergründe in einer Pandas Dataframe-HTML-Tabelle ein?

Linda Hamilton
Freigeben: 2024-10-31 21:57:02
Original
391 Leute haben es durchsucht

How to Color Text and Backgrounds in a Pandas Dataframe HTML Table?

Färben von Text und Hintergründen in einer Pandas-Dataframe-HTML-Tabelle mit Python mithilfe von Stilen und CSS

Um das Erscheinungsbild einer Pandas-Dataframe-HTML-Tabelle anzupassen, Sie können das Stilattribut und CSS kombinieren.

Text ändern Farbe

Um die Textfarbe in bestimmten Zeilen eines Datenrahmens zu ändern, verwenden Sie apply() mit einer Funktion, die basierend auf Bedingungen einen CSS-Stil auf die Werte anwendet. Um beispielsweise alle Werte in den „MOS“-Zeilen mit einer bestimmten Farbe einzufärben:

<code class="python">def highlight_MOS(s):
    is_mos = s.index.get_level_values(1) == 'MOS'
    return ['color: orange' if v else 'color: blue' for v in is_mos]

s = df.style.apply(highlight_MOS)</code>
Nach dem Login kopieren

Hintergrundfarbe ändern

Um die Hintergrundfarbe bestimmter Zellen festzulegen , können Sie set_table_styles() verwenden und die Eigenschaft „background_color“ angeben:

<code class="python">s.set_table_styles([dict(selector='th', props=[('background-color', 'lightblue')]),
                    dict(selector='td', props=[('background-color', 'white')])])</code>
Nach dem Login kopieren

Dadurch wird die Hintergrundfarbe aller Kopfzellen auf hell gesetzt Blau und der Rest der Zellen in Weiß.

Beispiel

In Kombination der oben genannten Techniken finden Sie hier ein Beispiel für die Einfärbung von Text und Hintergründen:

<code class="python">import numpy as np
import pandas as pd

arrays = [['Midland', 'Midland', 'Hereford', 'Hereford', 'Hobbs','Hobbs', 'Childress',
           'Childress', 'Reese', 'Reese', 'San Angelo', 'San Angelo'],
          ['WRF','MOS','WRF','MOS','WRF','MOS','WRF','MOS','WRF','MOS','WRF','MOS']]
tuples = list(zip(*arrays))
index = pd.MultiIndex.from_tuples(tuples)
df = pd.DataFrame(np.random.randn(12, 4), index=arrays,
                  columns=['00 UTC', '06 UTC', '12 UTC', '18 UTC'])

def highlight_MOS(s):
    is_mos = s.index.get_level_values(1) == 'MOS'
    return ['color: orange' if v else 'color: blue' for v in is_mos]

s = df.style.apply(highlight_MOS)
s.set_table_styles([dict(selector='th', props=[('background-color', 'lightblue')]),
                    dict(selector='td', props=[('background-color', 'white')])])

s</code>
Nach dem Login kopieren

Dadurch wird eine HTML-Tabelle mit orangefarbenem Text in „MOS“-Zeilen und hellblauen Header- und Indexhintergründen der obersten Ebene erstellt.

Das obige ist der detaillierte Inhalt vonWie färbe ich Text und Hintergründe in einer Pandas Dataframe-HTML-Tabelle ein?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage