Meerdere lijnen tekenen in seaborn (met voorbeeld)
U kunt de volgende basissyntaxis gebruiken om meerdere lijnen op hetzelfde plot te tekenen met behulp van seaborn in Python:
import seaborn as sns sns. lineplot (data=df[[' col1 ', ' col2 ', ' col3 ']]
Dit specifieke voorbeeld creëert een pad met drie verschillende lijnen.
Het volgende voorbeeld laat zien hoe u deze syntaxis in de praktijk kunt gebruiken.
Voorbeeld: meerdere lijnen tekenen in Seaborn
Stel dat we het volgende panda’s DataFrame hebben dat informatie bevat over de verkopen van vier verschillende winkels (A, B, C en D) gedurende acht opeenvolgende jaren:
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' year ': [1, 2, 3, 4, 5, 6, 7, 8],
' A ': [10, 12, 14, 15, 15, 14, 13, 18],
' B ': [18, 18, 19, 14, 14, 11, 20, 28],
' C ': [5, 7, 7, 9, 12, 9, 9, 4],
' D ': [11, 8, 10, 6, 6, 5, 9, 12]})
#view DataFrame
print (df)
year ABCD
0 1 10 18 5 11
1 2 12 18 7 8
2 3 14 19 7 10
3 4 15 14 9 6
4 5 15 14 12 6
5 6 14 11 9 5
6 7 13 20 9 9
7 8 18 28 4 12
We kunnen de functie lineplot() van Seaborn gebruiken om een plot te maken die vier lijnen weergeeft die de verkopen van elke winkel gedurende elk jaar weergeven:
import seaborn as sns #plot sales of each store as a line sns. lineplot (data=df[[' A ',' B ',' C ',' D ']])
Elke rij vertegenwoordigt de waarden van één van de vier winkels.
De legenda in de linkerbovenhoek geeft aan welke kleur bij welke winkel hoort.
Merk op dat we het paletargument ook kunnen gebruiken om onze eigen kleuren op te geven voor gebruik in de plot:
import seaborn as sns #plot sales of each store with custom colors sns. lineplot (data=df[[' A ', ' B ', ' C ', ' D ']], palette=[' red ', ' blue ', ' purple ', ' pink '])
Merk op dat de rijkleuren nu overeenkomen met de vier kleuren die we hebben opgegeven in het paletargument .
Als u wilt dat elk van de lijnen effen is, kunt u de functie pandas melt() gebruiken om het DataFrame in een lang formaat te smelten en vervolgens de volgende syntaxis gebruiken om de lijnen te tekenen:
import seaborn as sns #plot sales of each store with custom colors sns. lineplot (x=' year ', y=' value ', hue=' variable ', data=pd. melt (df,[' year ']), palette=[' red ', ' blue ', ' purple ', ' pink '])
Elk van de lijnen is nu effen in plaats van een eigen lijnstijl te hebben.
Opmerking : als u problemen ondervindt bij het importeren van seaborn in een Jupyter-notebook, moet u mogelijk eerst de opdracht %pip install seaborn uitvoeren.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken in Seaborn kunt uitvoeren:
Een titel toevoegen aan Seaborn-plots
Hoe de lettergrootte in Seaborn-plots te wijzigen
Hoe u de figuurgrootte van een Seaborn-plot kunt aanpassen