I was working on a conceptual webmap, I generally mockup the ideas on the ArcMap and then palm to the GIS team to create a webmap – this means sometimes what I do in the concept is easier to achieve in the webmap, and vice versa.
What I need to do, is take temporal (time) data from a table, relate it to a polygon feature class and have the polygons change their symbology based on the temporal data. This sounds complicated but was quite easy. If the polygons had time data this would be as simple as enabling time for that layer and opening the Time Slider. However, the polygons represent construction packages and don’t change. The temporal data is the schedule of tasks that are taking place in that package and these items far outnumber the polygon items, and, are changing often. If we had only one table to work with; we would have to copy polygon_1 into the database for each time there was a task for it in the temporal data. This would be a pretty ordinary way to manage the data, which is why we keep the polygons in one feature class, and the temporal data in a separate table.
Related vs Join
Initially I attempted to relate the tables, but this didn’t allow for the symbology to change dynamically, so I had to explore other ways. The most basic join (right click, joins and relates, join) only provided a one-to-one table join. This results in only a join between the polygona dn the first matching row from the temporal data.
In the toolbox, do a search for “Add Join” – you’ll find the tool you need, and it’s very easy to use with the result of a one-to-many join. This creates duplicate table features for your polygons, enough for every row of temporal data to be joined.
This is easy now, in the properties of the polygon layer, switch to the time tab, and enable time. I had to adjust my date columns a little, asthey were text instead of date formatted and just wouldn’t interpret right.Open the time slider and slide to a date to see the construction packages with work being conducted on that date (or whatever purpose you require).
I currently don’t have screenshots of the data I was working on, as it’s restricted by the client – however I will try and update this post over the next week with some clayton’s data. Interested to hear any questions, comments or improvements below.