在两个不同的轴上绘制温度和风速
此示例显示如何从现有的 ThingSpeak™ 通道读取两种类型的数据并生成具有两个独立 y 轴的线图。在示例中,您修改了 MATLAB Analysis 和 MATLAB Visualization App 提供的代码模板之一。ThingSpeak 通道 12397 包含来自位于马萨诸塞州纳蒂克 MathWorks® 园区停车场顶部的气象站的气象数据。
从模板代码创建 MATLAB Visualization
要从 ThingSpeak 通道创建温度和风速的可视化,您可以使用 MATLAB Visualization App 中提供的代码模板编写 MATLAB 脚本。
转至 Apps 选项卡并选择 MATLAB Visualizations。点击 New,选择 Plot temperature and wind speed of two different y-axes
,然后点击 Create。
可视化您的数据
ThingSpeak 使用代码填充 MATLAB Code 字段以生成双轴图。
1) 设置与 ThingSpeak 通信的变量。在此示例中,读取 API 密钥是不必要的,因为气象站通道是公共的。仅当您从自己的私有通道而不是气象站通道读取数据时才为 readAPIKey 分配一个值。
readChannelID = 12397;
TemperatureFieldID = 4;
windSpeedFieldID = 2;
readAPIKey = '';
2) 使用 thingSpeakRead
检索 300 个点的温度和风速数据。
[data, timeStamps ] = thingSpeakRead(readChannelID,'Fields',[TemperatureFieldID windSpeedFieldID], 'NumPoints',300,'ReadKey',readAPIKey);
3) 提取温度和风速数据。
temperatureData = data(:, 1); windSpeedData = data(:, 2);
4) 使用 plot
和 yyaxis
生成双轴图。使用 ylabel
设置每边的 y 轴标签。
yyaxis left plot(timeStamps, temperatureData); ylabel('Temperature'); yyaxis right plot(timeStamps, windSpeedData); ylabel('Wind Speed');
5) 您可以编辑模板代码以适合您的应用程序。例如,您可以编辑要读取的点数和代码中的情节标题。点击 Save and Run 以生成图。
由于该图是根据实时数据生成的,因此您的图看起来与该图相似但不完全相同。
另请参阅
函数
mean
(MATLAB) |plot
(MATLAB) |yyaxis
(MATLAB) |ylabel
(MATLAB) |thingSpeakRead