Comparez les données de température de trois jours différents
Cet exemple montre comment lire les données d'un canal ThingSpeak ™ existant et générer un tracé avec trois séries sur le même axe. Dans l'exemple, comme point de départ, vous utilisez l'un des modèles de code fournis par les applications MATLAB Analysis et MATLAB Visualizations dans ThingSpeak.
ThingSpeak canal 12397 contient des données météorologiques provenant d'une station météorologique située au sommet d'un parking sur le campus MathWorks ® à Natick, MA. Le champ 4 contient la mesure de température.
Créer une visualisation MATLAB à partir du code du modèle
Pour créer une visualisation de trois séries de données à partir d'un canal ThingSpeak, vous pouvez écrire un script MATLAB à l'aide du modèle de code fourni dans l'application MATLAB Visualizations.
Accédez à l’onglet Apps et cliquez sur MATLAB Visualisations. Cliquez sur New, choisissez Compare temperature data from three different days et cliquez sur Create.

Visualiser vos données
ThingSpeak remplit le champ MATLAB Code avec le code pour générer un tracé de ligne en trois séries.
1) Définissez les variables pour communiquer avec ThingSpeak. Dans cet exemple, la clé d'API en lecture n'est pas nécessaire car le canal de la station météo est public. Si vous lisez depuis votre propre canal, vous pouvez modifier ces valeurs.
readChannelID = 12397;
TemperatureFieldID = 4;
readAPIKey = '';2) Utilisez thingSpeakRead pour récupérer les données de chaque jour. La spécification de 'DateRange' vous permet de définir les dates d'arrêt et de début de votre collecte de données.
temperatureDay1 = thingSpeakRead(readChannelID,'Fields',TemperatureFieldID,'dateRange',... [datetime('today')-days(1),datetime('today')],'ReadKey',readAPIKey); temperatureDay2 = thingSpeakRead(readChannelID,'Fields',TemperatureFieldID,'dateRange',... [datetime('today')-days(2),datetime('today')-days(1)],'ReadKey',readAPIKey); temperatureDay3 = thingSpeakRead(readChannelID,'Fields',TemperatureFieldID,'dateRange',... [datetime('today')-days(3),datetime('today')-days(2)],'ReadKey',readAPIKey);
3) Créez un tableau de durées correspondant à la longueur de chaque ensemble de données. La durée de chaque série fluctue en fonction de l'heure de début exacte. Les mesures sont prises toutes les minutes, mais ne sont pas alignées sur chaque jour.
myTimes1=minutes(1:length(temperatureDay1)); myTimes2=minutes(1:length(temperatureDay2)); myTimes3=minutes(1:length(temperatureDay3));
4) Utilisez plot et hold pour générer les tracés. Définissez la légende pour différencier la série à l'aide de legend. Proposez ensuite les titres des axes et des graphiques avec xlabel, ylabel et title.
plot(myTimes1,temperatureDay1, myTimes2,temperatureDay2, myTimes3,temperatureDay3);
legend({'Day1','Day2','Day3'});
xlabel('Minutes')
ylabel('Temperature F');
title('Three-Day Temperature Comparison');
5) Vous pouvez modifier le code du modèle pour l'adapter à votre application. Par exemple, éditez le code pour changer le nombre de jours à lire et les titres des tracés. Appuyez sur Save and Run pour générer le tracé.
Étant donné que le tracé est généré à partir de données réelles, votre tracé semble similaire mais pas identique à celui-ci.
La superposition des données sur le même graphique montre trois comportements différents dans la variation de température pour la journée.
6) Vous pouvez éventuellement ajouter des visualisations enregistrées à votre canal. Dans Display Settings, utilisez le signe plus à côté de Add/Edit this Visualization to a Channel pour développer la liste des canaux.

Cochez la case du canal auquel vous souhaitez ajouter la visualisation. Pour ajouter des visualisations privées, sélectionnez Private view. Pour partager l'URL et ajouter la visualisation à la Public View, cliquez sur Create a public URL. Pour mettre à jour vos sélections, cliquez sur Save Display Settings.

Voir aussi
Fonctions
corrcoef(MATLAB) |thingSpeakRead|plot(MATLAB) |xlabel(MATLAB) |ylabel(MATLAB) |title(MATLAB) |hold(MATLAB)