Hoe matplotlib-plots met logaritmische schalen te maken
Vaak wilt u misschien Matplotlib-plots maken met logaritmische schalen voor een of meer assen. Gelukkig biedt Matplotlib hiervoor de volgende drie functies:
- Matplotlib.pyplot.semilogx() – Maak een plot met logaritmische schaling op de x-as.
- Matplotlib.pyplot.semilogy() – Maak een plot met logaritmische schaling op de y-as.
- Matplotlib.pyplot.loglog() – Maak een plot met logaritmische schaling op beide assen.
In deze tutorial wordt uitgelegd hoe u elk van deze functies in de praktijk kunt gebruiken.
Voorbeeld 1: Logaritmische schaal voor de X-as
Stel dat we een lijndiagram maken voor de volgende gegevens:
import matplotlib.pyplot as plt #create data x = [1, 8, 190, 1400, 6500] y = [1, 2, 3, 4, 5] #create line chart of data plt. plot (x,y)
We kunnen de functie .semilogx() gebruiken om de x-as naar een logaritmische schaal te converteren:
plt. semilogx ()
Merk op dat de y-as precies hetzelfde is, maar dat de x-as zich nu op een logaritmische schaal bevindt.
Voorbeeld 2: Logaritmische schaal voor de Y-as
Stel dat we een lijndiagram maken voor de volgende gegevens:
import matplotlib.pyplot as plt #create data x = [1, 2, 3, 4, 5] y = [1, 8, 190, 1400, 6500] #create line chart of data plt. plot (x,y)
We kunnen de functie .semilogy() gebruiken om de y-as naar een logaritmische schaal te converteren:
plt. semilogy ()
Merk op dat de x-as precies hetzelfde is, maar dat de y-as zich nu op een logaritmische schaal bevindt.
Voorbeeld 3: Logaritmische schaal voor beide assen
Stel dat we een lijndiagram maken voor de volgende gegevens:
import matplotlib.pyplot as plt #createdata x = [10, 200, 3000, 40000, 500000] y = [30, 400, 5000, 60000, 750000] #create line chart of data plt. plot (x,y)
We kunnen de functie .loglog() gebruiken om de y-as naar een logaritmische schaal te converteren:
plt. loglog (x,y)
Merk op dat beide assen zich nu op een logaritmische schaal bevinden.
Aanvullende bronnen
Hoe de lettergrootte op een Matplotlib-plot te wijzigen
Hoe teken uit Matplotlib-plots te verwijderen