Waarden weergeven op seaborn barplot (met voorbeelden)


U kunt de volgende functie gebruiken om waarden op een mariene barplot weer te geven:

 def show_values (axs, orient=" v ", space=.01):
    def _single (ax):
        if orient == " v ":
            for p in ax. patches :
                _x = p. get_x () + p. get_width ()/2
                _y = p. get_y () + p. get_height () + ( p.get_height ()*0.01)
                value = ' {:.1f} '. format (e.g. get_height ())
                ax. text (_x, _y, value, ha=" center ") 
        elif orient == " h ":
            for p in ax. patches :
                _x = p. get_x () + p. get_width () + float(space)
                _y = p. get_y () + p. get_height () - (e.g. get_height ()*0.5)
                value = ' {:.1f} '. format (e.g. get_width ())
                ax. text (_x, _y, value, ha=" left ")

    if isinstance(axs, np.ndarray ):
        for idx, ax in np. ndenumerate (axs):
            _single(ax)
    else :
        _single(axs)

Deze functie werkt voor horizontale en verticale staafdiagrammen.

De volgende voorbeelden laten zien hoe u deze functie in de praktijk kunt gebruiken met de Seaborn “tips” dataset:

 import seaborn as sns
import pandas as pd
import numpy as np

#load tips dataset
data = sns. load_dataset (“ tips ”)

#view first five rows
data. head ()

	total_bill tip sex smoker day time size
0 16.99 1.01 Female No Sun Dinner 2
1 10.34 1.66 Male No Sun Dinner 3
2 21.01 3.50 Male No Sun Dinner 3
3 23.68 3.31 Male No Sun Dinner 2
4 24.59 3.61 Female No Sun Dinner 4

Voorbeeld 1: Waarden weergeven op een verticaal staafdiagram

De volgende code laat zien hoe u waarden op een verticaal staafdiagram kunt weergeven:

 #create vertical barplot
p = sns. barplot (x=" day ", y=" tip ", data=data, ci= None )

#show values on barplot
show_values(p)

Voorbeeld 2: Waarden weergeven op een horizontaal staafdiagram

De volgende code laat zien hoe waarden op een horizontaal staafdiagram kunnen worden weergegeven:

 #create horizontal barplot
p = sns. barplot (x=" tip ", y=" day ", data=data, ci= None )

#show values on barplot
show_values(p, " h ", space= 0 )

Houd er rekening mee dat hoe groter de waarde die u voor de spatie gebruikt, hoe verder de labels van de balken verwijderd zullen zijn.

Laten we bijvoorbeeld de spatie wijzigen van 0 in .05 :

 #create horizontal barplot
p = sns. barplot (x=" tip ", y=" day ", data=data, ci= None )

#show values on barplot
show_values(p, " h ", space= 0.05 ) 

Opmerking : om het aantal weergegeven decimalen te wijzigen, wijzigt u eenvoudigweg de waarde op deze regel van de functie:

 value = ' {:.1f} '. format (e.g. get_height ())

Wijzig dit bijvoorbeeld in . 1f tot .2f om twee decimalen weer te geven in plaats van één.

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende functies in Seaborn kunt uitvoeren:

Hoe maak je een cirkeldiagram in Seaborn
Hoe u een tijdreeksplot maakt in Seaborn
Hoe u meerdere Seaborn-plots in één figuur kunt maken

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert