Skip to main content

Les secrets de la géodatabase : créer des animations à l’aide d’une jointure un à plusieurs

Au service d’assistance technique pour ArcGIS for Desktop, nous avons l’occasion d’aider des clients qui travaillent sur des projets très intéressants. Comme les données temporelles deviennent plus nombreuses, nous recevons souvent des questions sur les flux de travaux permettant de travailler avec les données et les animations temporelles dans ArcGIS for Desktop. Katelyn, l’une des analystes de notre service, a récemment aidé un client qui tentait de créer une animation utilisant des données temporelles se trouvant dans une table jointe possédant une cardinalité un à plusieurs. La solution au problème du client mettait en valeur quelques fonctionnalités utiles propres aux géodatabases et aux jointures de tables, et Katelyn a rédigé le billet de blogue suivant pour décrire le flux de travaux utilisé pour obtenir l’animation désirée par le client.

Ce billet portera sur la visualisation de données temporelles enregistrées dans une géodatabase indépendante jointe à une classe d’entités polygonales à l’aide d’une relation un à plusieurs. La classe d’entités polygonales représente des entités géographiques qui ne changent pas de forme ni d’emplacement avec le temps, au contraire de leurs attributs. Dans ce billet, nous expliquerons comment visualiser la population des provinces du Canada de 1971 à 2006 à l’aide de la fenêtre du curseur temporel d’ArcGIS for Desktop, tout en utilisant les données temporelles se trouvant dans une table jointe.

Les pratiques exemplaires en gestion de données nous suggèrent de stocker les données dans différentes tables pour éviter les redondances. Les données peuvent aussi être enregistrées dans différentes tables si elles proviennent de sources différentes. Cette méthode d’enregistrement est très utile dans le cas d’une animation, car les entités géographiques sont entreposées dans une table tandis que les données associées sont entreposées dans l’autre. Dans l’exemple présent, nous avons une classe d’entités polygonales contenant les provinces du Canada et une table indépendante contenant les valeurs de la population annuelle des provinces. Toutes deux sont enregistrées dans une géodatabase fichier. Pour créer à lֹ’aide de ces données une animation illustrant le changement de la population des provinces du Canada, une jointure de table est utilisée entre les deux tables. Cette jointure peut être créée à l’aide de la boîte de dialogue Joindre ou de l’outil Ajouter une jointure.

C’est ici que la géodatabase devient des plus utiles : il est possible d’utiliser une jointure de table avec une relation un à plusieurs pour créer une animation. Je suis certaine que beaucoup d’entre vous se disent : « Attendez, les jointures de table ne fonctionnent que dans les relations un à un, non? ». C’est en grande partie vrai; peu importe le format de données utilisé, votre table d’origine n’affichera que la première occurrence d’une concordance de la table jointe. Cependant, les données de géodatabase nous permettent de profiter des relations un à plusieurs avec une jointure de table même si vous ne voyez que le premier enregistrement joint dans la table d’attributs de la couche. Cette fonction est très intéressante, car elle nous permet d’animer un ensemble de données géographiques fixes (comme des provinces) avec des données temporelles se trouvant dans la table jointe. Si nous n’utilisions pas la géodatabase, il faudrait utiliser une couche d’entité ayant une relation un à un avec la table; dans ce cas, il faudrait dupliquer les provinces pour chacune des années de changement de la population de la table jointe. Mais ce serait une classe d’entité inutilement encombrante.

En gardant ces connaissances à l’esprit, regardons les étapes nécessaires à la création d’une animation temporelle qui exploite une jointure de table avec une relation un à plusieurs.

Étape 1 : Nettoyez les données

Comme indiqué précédemment, les données utilisées pour créer l’animation sont stockées dans deux tables différentes. L’une des tables est une table d’attributs de classe d’entités polygonales et l’autre est une table au format CSV indiquant les valeurs de population à représenter ainsi que l’année correspondante. Ces valeurs temporelles sont stockées dans un seul champ d’attribut et peuvent servir à la visualisation temporelle. Assurez-vous que ces données sont stockées dans une seule géodatabase fichier.

Remarque importante : pour être jointes, les deux tables doivent avoir un champ en commun pouvant servir de champ principal. S’il n’existe pas de champ commun, vous devrez en créer un dans les deux tables avant de continuer.

La table d’attributs de la classe d’entités polygonales des provinces

Les documents connexes à ArcGIS for Desktop 10.3.1 recommandent quatre pratiques exemplaires pour stocker les données temporelles. Les voici :

La table contenant les valeurs servant au calcul de la population du Canad

Étape 2 : Créez la jointure de table entre la classe d’entités polygonales et la table

Après avoir ajouté les données à la carte, faites un clic droit sur la classe d’entités polygonales dans la table des matières, sélectionnez Jointures et relations, puis Joindre. Indiquez les paramètres dans la fenêtre « Joindre des données ». Le champ de jointure sera le champ principal créé pour lier la province à la valeur de population d’une année. Vous pouvez choisir de « Valider la jointure » pour vérifier les données et trouver les potentielles erreurs de jointure causées par les caractères invalides, les mots réservés et les tables qui ne sont pas des géodatabases. Vous saurez aussi le nombre d’enregistrements correspondants de la jointure. Pour obtenir de plus amples renseignements sur la validation de jointure, cliquez ici.

Si vous visualisez la table d’attributs après avoir effectué la jointure, vous ne verrez que l’enregistrement de la première date comprise dans celle-ci. C’est normal; même si la table d’attributs est limitée à montrer uniquement le premier enregistrement correspondant, les autres peuvent tout de même être utilisés par l’animation.

Étape 3 : Activez le temps pour la classe d’entités polygonales en utilisant le champ de date nouvellement joint

Pour activer le temps sur les données, faites un clic droit sur la classe d’entités polygonales dans Table des matières > Propriétés de la couche > onglet Temps et assurez-vous que la case Activer le temps sur cette couche est cochée. Plusieurs paramètres s’afficheront alors. Dans les propriétés de Temps, réglez le paramètre Temporalité de la couche sur Chaque entité dispose d’un champ temporel unique, car chaque province n’a qu’une seule donnée de population par année. Le Champ temporel se nomme Date dans le présent exemple, et le Format du champ est réglé sur AAAA afin d’indiquer une année. L’Intervalle temporel des données utilisées dans cet exemple est 5,00 années, et la Durée de la couche est déterminée en cliquant sur le bouton Calculer, qui traitera la première et la dernière année des renseignements temporels des données. Dans cet exemple, il n’est pas nécessaire de modifier les Paramètres avancés.

L’onglet Temps dans la boîte de dialogue des propriétés de la couche des provinces.

Étape 4 : Représentez la classe d’entités polygonales à l’aide des champs de valeurs joints dans la table

Choisissez la symbologie qui illustre le mieux les données animées par le curseur temporel. Pour représenter la population des provinces du Canada, une symbologie de couleurs graduées présentant la quantité a été choisie. Une grande variété de couleurs a été sélectionnée afin de mieux illustrer les changements dans la population au fil du temps. Vous pouvez aussi normaliser les valeurs et choisir le nombre de classes servant à représenter les valeurs illustrées. Cela dépend de vos données.

Représentation de la population des provinces du Canada

Étape 5 : Utilisez la fenêtre Curseur temporel pour animer les données temporelles

Pour ouvrir la fenêtre Curseur temporel, cliquez sur le bouton Curseur temporel dans la barre d’outils Outils. Pour modifier la visualisation temporelle, cliquez sur le bouton Options de la fenêtre.

Paramètres servant à visualiser les données temporelles dans la fenêtre Options du curseur temporel.

L’onglet Affichage temporel renferme les paramètres servant à modifier la visualisation de vos données. Vous pouvez laisser le Fuseau horaire réglé sur si vous ne souhaitez pas visualiser les données dans différents fuseaux horaires. Si vous sélectionnez un fuseau horaire, tous les jeux de données des différents fuseaux horaires seront organisés sur une même ligne du temps. L’intervalle temporel et les paramètres de Fenêtre horaire indiquent la progression temporelle de votre animation. L’intervalle temporel dépend des données et contrôle la période par laquelle votre curseur temporel avancera entre les dates de vos données. Les paramètres de la Fenêtre horaire déterminent la plage de données qui s’afficheront lors de la progression de chaque période. Dans cet exemple, un intervalle de cinq ans et une fenêtre temporelle nulle ont été utilisés. Enfin, le Format d’affichage de la date et le Format d’affichage de l’heure ont été choisis pour afficher les données temporelles sur le curseur temporel.

La fenêtre Options du curseur temporel comprend trois autres onglets : les paramètres de l’onglet Durée servent à modifier la période pendant laquelle les données sont visualisées. Les paramètres de l’onglet Lecture contrôlent la vitesse et la durée de l’animation. La durée de la lecture indiquée dans les paramètres modifiera la durée de chaque cadre du vidéo créé. Enfin, les paramètres de l’onglet Autre gèrent la transparence de la fenêtre du curseur temporel.

Quand vous aurez choisi vos paramètres d’animation, vous devriez être en mesure de lire l’animation. Remarquez qu’elle utilise la jointure un à plusieurs même si la table d’attributs affiche seulement le premier enregistrement correspondant.

Étape 6 : Exportez l’animation en vidéo

Maintenant que vous avez créé une animation pour vos données temporelles, c’est le moment de les exporter sous la forme d’une vidéo. Vous pouvez les exporter dans un fichier audio au format Audio Video Interleave, ou entrelacement audio-vidéo (.avi), ou au format QuickTime (.mov). Après avoir précisé le nom du fichier ainsi que l’emplacement où vous souhaitez l’enregistrer, vous devrez indiquer les paramètres de compression de la vidéo. Dans cet exemple, un type de vidéo AVI avec une méthode de compression Trames complètes (non compressées) a été choisi. Pour obtenir plus de renseignements sur les propriétés de compression des vidéos du curseur temporel, cliquez ici.

Vous obtiendrez un fichier vidéo que vous pourrez, par exemple, faire jouer lors d’une présentation ou intégrer dans une page Web.

Animation présentant l’évolution de la population des provinces

Si vous êtes intéressés à visualiser des couches d’entités où la forme et l’emplacement des entités changent au fil du temps, vous trouverez les instructions associées dans le tutoriel de Tracking Analyst pour ArcGIS for Desktop.

Connaissez-vous d’autres fonctionnalités peu connues des géodatabases? Si c’est le cas, partagez-les avec nous en laissant un commentaire ci-dessous.