主要内容

本页采用了机器翻译。点击此处可查看英文原文。

绘制分布拟合直方图

此示例显示如何将分布拟合到 ThingSpeak™ 通道中的数据。您同时生成马萨诸塞州高速公路交通密度数据的直方图和分布拟合。

从车辆计数器 ThingSpeak 通道读取数据

车辆计数器 ThingSpeak 通道使用 Raspberry Pi™ 和网络摄像头来计数繁忙高速公路上的车辆数量。Raspberry Pi 上运行着车辆计数算法,每 15 秒计数一次的汽车密度被发送到 ThingSpeak。字段 1 和 2 分别包含东行和西行的交通数据。

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

过滤您的数据

在拟合分布之前,请过滤数据以删除零。

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

绘制直方图和拟合分布

将东行交通数据可视化为直方图,并拟合诸如 normalpoissongammakernel 之类的分布。可视化数据有助于您了解底层分布的形状。拟合非参数核平滑分布。

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');

直方图和拟合度显示分布向右偏斜。

另请参阅

函数