Main Content

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

在两个不同轴上绘制温度和风速

此示例演示如何从现有 ThingSpeak™通道读取两种类型的数据并生成具有两个独立 y 轴的线图。在示例中,您修改 MATLAB Analysis 和 MATLAB Visualizations App 提供的代码模板之一。ThingSpeak channel 12397 包含来自马萨诸塞州内蒂克 MathWorks® 园区停车场顶部气象站的天气数据。

创建一个 MATLAB 从模板代码进行可视化

要从 ThingSpeak通道创建温度和风速的可视化,您可以使用 MATLAB 可视化 App 中提供的代码模板编写 MATLAB 脚本。

转到 App 选项卡并选择“MATLAB 可视化”。点击“新建”,选择Plot temperature and wind speed of two different y-axes,然后点击“创建”。

可视化您的数据

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) 使用plotyyaxis生成两轴图。使用 ylabel 设置每条边的 y 轴标签。

yyaxis left
plot(timeStamps, temperatureData);
ylabel('Temperature');
yyaxis right
plot(timeStamps, windSpeedData);
ylabel('Wind Speed');

5) 您可以编辑模板代码以适合您的应用。例如,您可以在代码中编辑要读取的点数和绘图标题。点击“保存并运行”以生成绘图。

由于该图是根据实时数据生成的,因此您的图看起来与该图相似但不完全相同。

另请参阅

函数

相关示例

详细信息