Contenuto principale

Questa pagina è stata tradotta con la traduzione automatica. Fai clic qui per vedere l'ultima versione in inglese.

Traccia un istogramma con un adattamento della distribuzione

Questo esempio mostra come adattare una distribuzione ai dati in un canale ThingSpeak™ . Si genera contemporaneamente un istogramma e un adattamento alla distribuzione dei dati sulla densità del traffico per un'autostrada nel Massachusetts.

Leggi i dati dal canale ThingSpeak di Car-Counter

Il canale ThingSpeak per il contatore delle auto utilizza un Raspberry Pi™ e una webcam per contare le auto su un'autostrada trafficata. Sul Raspberry Pi è in esecuzione un algoritmo di conteggio delle auto e la densità delle auto contate ogni 15 secondi viene inviata a ThingSpeak. I campi 1 e 2 contengono rispettivamente i dati sul traffico in direzione est e ovest.

data = thingSpeakRead(38629,'NumDays',1,'Fields',[1,2],'outputFormat','table');

Filtra i tuoi dati

Prima di adattare la distribuzione, filtra i dati per rimuovere gli zeri.

data_without_zeros = data.DensityOfEastboundCars(data.DensityOfEastboundCars > 0);

Traccia l'istogramma e la distribuzione adattata

Visualizza i dati del traffico in direzione est come un istogramma e adatta una distribuzione come normal, poisson, gamma o kernel. Visualizzare i dati aiuta a comprendere la forma della distribuzione sottostante. Adatta una distribuzione di livellamento del kernel non parametrica.

number_of_bins = 20;
histfit(data_without_zeros,number_of_bins,'kernel');
xlabel('Bins for density of cars every 15 seconds');
title('Fitting Kernel Function on Distribution of Eastbound Cars in the Past Day');

L'istogramma e l'adattamento mostrano che la distribuzione è distorta a destra.

Vedi anche

Funzioni