Visualisez la corrélation entre la température et l'humidité
Cet exemple montre comment lire plusieurs variables à partir d'un canal ThingSpeak ™ existant et générer un scatter plot pour examiner la corrélation entre la température et la pression. Dans l'exemple, vous modifiez l'un des modèles de code fournis par l'application MATLAB Analysis et MATLAB Visualizations.
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, le champ 3 contient la mesure d'humidité.
Créer une MATLAB Visualization à partir du code du modèle
Pour créer une visualisation de nuage de points des données d'un canal ThingSpeak, vous pouvez écrire un script MATLAB ® à l'aide d'un modèle de code fourni dans l'application MATLAB Visualizations.
Accédez à l’onglet Apps et sélectionnez MATLAB Visualizations. Cliquez sur New, sélectionnez Visualize correlation between temperature and humidity, puis cliquez sur Create.

Visualisez vos données
ThingSpeak remplit le champ MATLAB Code avec le code pour générer l'histogramme de température.
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;
HumidityFieldID = 3;
readAPIKey = '';2) Utilisez thingSpeakRead pour récupérer 300 points à partir des champs de température et d'humidité.
data = thingSpeakRead(readChannelID,'Fields',[TemperatureFieldID HumidityFieldID], ... 'NumPoints',300, 'ReadKey',readAPIKey);
3) Extraire les données de température et de vitesse du vent.
temperatureData = data(:, 1); humidityData = data(:, 2);
4) Utilisez scatter pour générer le tracé. Définissez les étiquettes des axes x et y à l'aide de xlabel et ylabel.
scatter(temperatureData,humidityData); xlabel('Temperature'); ylabel('Humidity');

5) Vous pouvez modifier le code du modèle pour l'adapter à votre application. Par exemple, vous pouvez modifier le nombre de points à lire et les titres des tracés dans le code. Cliquez sur Save and Run pour générer la sortie. Étant donné que le scatter plot est généré à partir de données temps réel, votre tracé ressemble mais pas à celui-ci.
Ajouter une visualisation à votre vue de canal
Vous pouvez éventuellement ajouter des visualisations enregistrées à votre canal. Dans Display Settings, cliquez sur Add/Edit this Visualization to a Channel pour développer la liste des canaux.

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

Déterminer l'ajustement linéaire
La fonction polyfit peut fournir un ajustement aux données linéaires lorsque le degré d'ajustement est défini sur une valeur de 1. Le code suivant n'est pas inclus dans le modèle. Pour tracer plusieurs distributions, ajoutez ce code au modèle.
1) Utilisez polyfit pour effectuer un ajustement aux données. Spécifiez 1 comme dernier argument pour un ajustement linéaire.
fitData = polyfit(temperatureData,humidityData,1);
display(fitData(1),'Slope');Slope = -1.4785
display(fitData(2),'Intercept');Intercept = 105.7281
2) Étant donné que la température et l'humidité n'ont pas de relation définie, l'ajustement linéaire n'est pas nécessairement un bon ajustement. Vous pouvez vérifier la qualité de l’ajustement avec un coefficient de corrélation. Calculer et afficher le coefficient de corrélation.
r = corrcoef(temperatureData,humidityData);
display(r(2),'Correlation Coefficient');-0.9873
3) Appuyez sur Save and Run pour générer le tracé double. Le nuage de points a une pente négative, et donc un coefficient de corrélation négatif : l'humidité diminue avec l'augmentation de la température pour cette mesure. Une valeur r de 1 ou -1 indique un ajustement parfait. La valeur r de ces données confirme que l'ajustement est relativement médiocre.
Voir aussi
Fonctions
scatter(MATLAB) |polyfit(MATLAB) |corrcoef(MATLAB) |thingSpeakRead|xlabel(MATLAB) |ylabel(MATLAB)
Rubriques
- Utiliser l'histogramme pour comprendre la variation des données
- Visualisez les données directionnelles avec Compass Plot
- Utiliser Area Plot pour comparer les ensembles de données de trafic
- Comparez les données de température de trois jours différents
- Tracer la température et la vitesse du vent sur deux axes différents
- Application de visualisation MATLAB