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 Analaysis et MATLAB Visualizations.
ThingSpeak channel 12397 contient des données météorologiques provenant d'une station météo située au-dessus 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 uneMATLABVisualisation à partir du code modèle
Pour créer une visualisation en scatter plot 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.
Allez dans l'onglet Applications et sélectionnez Visualisations MATLAB . Cliquez sur Nouveau , sélectionnez Visualiser la corrélation entre la température et l'humidité et cliquez sur Créer .
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 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 en utilisant 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 Enregistrer et exécuter 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 Paramètres d'affichage , cliquez sur Ajouter/Modifier cette visualisation à un canal 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 Vue privée . Pour partager l'URL et ajouter la visualisation à la Vue publique , sélectionnez Créer une URL publique . Pour mettre à jour vos sélections, cliquez sur Enregistrer les paramètres d'affichage .
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.1647
display(fitData(2),'Intercept');
Intercept = 104.3294
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.8784
3) Appuyez sur Enregistrer et exécuter pour générer le double tracé. Le scatter plot 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)
Exemples associés
- 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