How to parse webpage JSON with temperatures in it.

1 次查看(过去 30 天)
I am making a simple temperature graph with Thingspeak. I want to use my cities publicly available meteorology API - https://api.meteo.lt/v1/stations/vilniaus-ams/observations/2023-06-21
How would I read the temperature data and put it onto graph (merge it with inside temperature)?
Here is how I do it with my inside temperature sensor (I used standard Matlab example and edited it - added three hours to fix my time zone):
[dustData,Timestamps]=thingSpeakRead(XXXXXXX,'Fields',1,'NumPoints',100);
plot(Timestamps+hours(3),dustData,'red');
ylabel('Degrees');
title('Temperature');
grid on;

采纳的回答

Jon
Jon 2023-6-21
You can use webread
data = webread('https://api.meteo.lt/v1/stations/vilniaus-ams/observations/2023-06-21')
data = struct with fields:
station: [1×1 struct] observations: [12×1 struct]
  1 个评论
Jon
Jon 2023-6-21
编辑:Jon 2023-6-21
In the above example, the air temperatures (I think that is what you want) are in data.observations.airTemperature

请先登录,再进行评论。

更多回答(1 个)

Lakshay Rose
Lakshay Rose 2023-6-21
Hi Mantas Dabrovolskas,
As per my understanding you are trying to read the JSON data returned from the API call from the mentioned URL.
You can follow the below steps to achieve the desired result –
  1. Retrieve the data from the API using the “webread” function in MATLAB. The API returns data in JSON format, so you'll need to parse it to extract the temperature values.
  2. Retrieve the inside temperature data from “ThingSpeak” using the “thingSpeakRead” function, similar to what you already have in your code.
  3. Merge both the dataset and plot the graph.
You can also refer to the documentation of “webread” for further information –
  1 个评论
Jon
Jon 2023-6-21
From my simple example above, it seems that webread already parses the contents and returns it in a structure, so it is not necessary to use jsondecode

请先登录,再进行评论。

社区

更多回答在  ThingSpeak Community

产品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by