主要内容

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

将风速可视化为环境温度和压力的函数

此示例显示如何使用 Curve Fitting Toolbox™ 可视化风速作为环境空气温度和压力的函数的变化。您从气象站读取 ThingSpeak™ 数据,然后使用 3D 图来可视化数据和拟合。

从气象站 ThingSpeak 通道读取数据

ThingSpeak 通道 12397 包含来自位于马萨诸塞州纳蒂克的 MathWorks 气象站的数据。每分钟收集一次数据。字段 2、4 和 6 分别包含风速、温度和气压数据。

% Read the data using the |thingSpeakRead| function from channel 12397 on a particular week. For example, the week of May 1, 2018.
startDate = datetime('May 1, 2018 0:0:0');
endDate = datetime('May 8, 2018 0:0:0');
data = thingSpeakRead(12397,'daterange',[startDate endDate],'Fields',[2 4 6],'outputFormat','table');

根据数据拟合曲面

气压和温度的变化都会影响风速。假设风速的变化由环境温度和压力的二次多项式解释。使用 fit 函数拟合二次曲面。

fitObject = fit([data.TemperatureF,data.PressureHg],data.WindSpeedmph,'poly22');

绘制拟合数据

您可以绘制拟合数据来查看二次曲面拟合是否能捕捉到风速的变化。

plot(fitObject,[data.TemperatureF,data.PressureHg],data.WindSpeedmph);
xlabel('Ambient Temperature [^{\circ}F]');
ylabel('Ambient Air Pressure [inHg]');
zlabel('Wind Speed [mph]');
title('Wind Speed as a Function of Ambient Temperature and Pressure','FontSize',10);

二次拟合似乎为波动的风速数据提供了良好的平均值。在这个春日,风速随着气压的上升而呈抛物线状,但随着气温的升高而增大。

另请参阅

函数