Come creare un grafico log-log in python
Un grafico log-log è un grafico che utilizza scale logaritmiche sia sull’asse x che sull’asse y.
Questo tipo di grafico è utile per visualizzare due variabili quando la vera relazione tra loro segue un qualche tipo di legge di potere.
Questo tutorial spiega come creare un grafico log-log in Python.
Come creare un grafico log-log in Python
Supponiamo di avere i seguenti panda DataFrame:
import pandas as pd import matplotlib. pyplot as plt #createDataFrame df = pd. DataFrame ({' x ': [3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22], ' y ': [3, 4, 5, 7, 9, 13, 15, 19, 23, 24, 29, 38, 40, 50, 56, 59, 70, 89, 104, 130]}) #create scatterplot plt. scatter (df. x , df. y )
È chiaro che la relazione tra xey segue una legge di potenza.
Il codice seguente mostra come utilizzare numpy.log() per eseguire una trasformazione log sulle due variabili e creare un grafico log-log per visualizzare la relazione tra loro:
import numpy as np #perform log transformation on both x and y xlog = np. log ( df.x ) ylog = np. log ( df.y ) #create log-log plot plt. scatter (xlog, ylog)
L’asse x mostra il logaritmo di x e l’asse y mostra il logaritmo di y.
Si noti come la relazione tra log(x) e log(y) sia molto più lineare rispetto al grafico precedente.
Sentiti libero di aggiungere un titolo e le etichette degli assi per rendere la trama più facile da interpretare:
#create log-log plot with labels
plt. scatter (xlog, ylog, color=' purple ')
plt. xlabel (' Log(x) ')
plt. ylabel (' Log(y) ')
plt. title (' Log-Log Plot ')
Tieni inoltre presente che puoi creare un grafico a linee anziché un grafico a dispersione semplicemente utilizzando plt.plot() come segue:
#create log-log line plot
plt. plot (xlog, ylog, color=' purple ')
plt. xlabel (' Log(x) ')
plt. ylabel (' Log(y) ')
plt. title (' Log-Log Plot ')
Risorse addizionali
Come creare un grafico log-log in R
Come creare un grafico log-log in Excel