Spridningsdiagram
Ett spridningsdiagram är en typ av diagram som visar sambandet mellan två variabler (x och y) med hjälp av punkter eller andra markörer.
Spridningsdiagram är ett av de enklaste verktygen för att visuellt undersöka om två variabler är korrelerade. Även om det inte är den mest exakta metoden, ger de ofta användbar insikt vid en snabb överblick.
Det liknar ett linjediagram, förutom att det inte har några linjer, endast markörer. För att skapa ett spridningsdiagram använder du helt enkelt funktionen scatter()
från pyplot
, där du först anger värden för x-axeln och sedan värden för y-axeln. Låt oss titta på ett exempel:
import matplotlib.pyplot as plt import numpy as np x = np.array([6, 1, 8, 20, 13, 4, 16, 5, 11, 10]) y = 2 * x + 5 # Creating a scatter plot plt.scatter(x, y) plt.show()
Syntaxen för funktionen scatter()
liknar den för plot()
. Till skillnad från plot()
måste du dock alltid ange värden för både parametrarna x
och y
.
I detta exempel beräknas y
med formeln y = 2x + 5
. Spridningsdiagrammet visar en positiv linjär relation — när x
ökar, ökar även y
, och omvänt.
Det är också möjligt att ange andra markörer än punkter samt justera deras storlek med hjälp av parametrarna marker
och s
:
import matplotlib.pyplot as plt import numpy as np x = np.array([6, 1, 8, 20, 13, 4, 16, 5, 11, 10]) y = 2 * x + 5 # Specifying the markers and their size plt.scatter(x, y, marker='x', s=100) plt.show()
Här användes 'x'
-markörer istället för standardvärdet 'o'
(punkter), och deras storlek sattes till 100. Du kan justera parametern s
för att testa olika markörstorlekar.
Nästa avsnitt kommer att fokusera mer på anpassning av diagram, men för tillfället kan du använda scatter()
-funktionens dokumentation för att utforska mer.
Att rita flera spridningsdiagram kan enkelt göras genom att anropa funktionen scatter()
två gånger med olika x
- och y
-argument (på liknande sätt som för linjediagram).
Även om plt.plot(x, y, 'o')
och plt.scatter(x, y)
kan se lika ut vid första anblick, har de olika syften:
plt.plot(x, y, 'o')
är en linjediagramsfunktion som använder'o'
för att endast visa markörer. Det är snabbt men erbjuder begränsad formatering.plt.scatter(x, y)
är en dedikerad spridningsdiagramfunktion som ger mer kontroll — möjliggör individuell anpassning av markörstorlek, färg och transparens.
Swipe to start coding
Visa ett kvadratiskt samband mellan två variabler med hjälp av ett spridningsdiagram:
- Ersätt understrecken så att
y
-arrayen innehåller kvadrerade element frånx
-arrayen. - Använd rätt funktion för att skapa ett spridningsdiagram.
- Skicka in
x
ochy
i denna funktion i rätt ordning. - Ange markörernas storlek till 70.
Lösning
Tack för dina kommentarer!