• Warren

Bonspiel I: Basemap & Attribute-driven Symbology

For those that curl recreationally in the many curling clubs across Canada, the end of the curling season is approaching. Club playoffs are beginning, if not already underway, and year-end bonspiels (curling tournaments) aren’t far off. However, at the professional level, many of Canada’s events are in full swing and fans are glued to the broadcast coverage watching to see their team advance to the playoffs.

I’m no exception and have been engrossed in the coverage of both the Scotties Tournament of Hearts and the Tim Hortons Brier (the ‘Scotties’ and ‘Brier’ for short). Between ends (curlings innings, periods, or quarters) and the assortment absurdly Canadian commercials the commentators delve into many asides including the history of the bonspiels, past champions, and many other statistics.

It was the rich history of these tournaments and those statistical nuggets that naturally got me thinking of creating a map. It also helps that the competing teams represent the various provinces and territories of Canada (so a map was in order).

The following will be the first instalment in a series of posts outlining some of the major steps, interesting revelations, or useful tidbits I discover throughout the creation of this map.

The map has started to take shape but there's a long way to go. Progress so far will be discussed below.

Questions & Data

Having just started thinking about how this make might take shape I had formed a few questions in my mind that I thought might help guide me as I explored the data available.

  • Which cities have played host to these events, and how frequently?

  • Are there regions that tend to play host more often than others?

  • How often have the teams, representing their provinces, won the events?

  • And can I combine all of this together in a great map? Come on, that's why we're all here isn't it?

With some data gathered from Curling Canada’s archive supplemented by some data points published by some dedicated curling fans on Wikipedia, I assembled the core of the data to answer these questions. I compiled the data into a series of themed tabs in excel that could readily be joined to spatial data using either the city name or province.

Data preparation complete, it was time to start the map. I knew that I wanted to have illustrated elements on my map so I needed to keep my base map understated and classy.


Fortunately, I had the perfect inky/fineliner style assets I created for previous projects and could easily reuse. The ink stroke symbols look even better when applied to datasets from project linework. I especially like how it looks when applied to the Moriarty Hand line; there's just so much hand drawn charm in the lines.

Moriarty Hand from Project Linework with my ink drawn basemap.

To ensure that the continents stood out from the empty expanse of the ocean I added a hatched fill buffer using the symbol effects panel.

I cannot express with works how great symbol effects

are so here's screenshots instead!

Modifying this symbol slightly, and using a donut rather than a buffer, I was able to apply it to the waterbodies as well.

Hatched filled donut symbol for waterbodies

(water bodies, how many words is it anyway?)

By the way have you noticed this convenient addition to the drop down menu in v2.5 of ArcGIS Pro? You can now format additional symbols from here rather messing about elsewhere, talk about quality of life improvement!

This helpful little addition means you can craft your additional symbols with a lot less fuss! I used to have to create a line symbol in the style manager before using it within another symbol like this.

That about wraps it up for the basemap. I imagine I may make some additional adjustments as the map moves forward but for now it's onto the map markers.

Map Symbols

To help answer my first question, I wanted to create some appropriately themed map markers that I could scale to indicate how many times a city played host to either of these major events. Naturally, I stayed true to the theme and opted to use a curling rock. I jumped over to my illustration software and created some graphic elements that I could use to construct my symbol. Having gone through this workflow a number of times I've learned a few lessons when using images in Pro. So I knew to create my symbol out of separate elements; the rock outline, the rock background, and the handle - This will become increasingly important in just a moment.

Creating symbols as stacked elements gives you

greater control after they've been added to Pro.

Satisfied with my bespoke curling rock symbol, I stacked the elements up as picture markers in ArcGIS Pro and scaled them to the total_host_count attribute in my data.

This looked so great! However, I realized it doesn't necessarily help me understand an additional question I formulated along the way. Which cities hosted the Brier and which hosted the Scotties? A bivariate curling rock was in order, and this is why authoring your picture symbols as individual components is important. Since my handle was a separate element, and also tintable white fill - discussed here again, I could use it as an indicator for my second variable.

Red or Yellow?

Now as with most things, there are more than one way to colour-code a curling rock. It would have been possible to duplicate the layer, recreate the symbols with different coloured handles, and so on. However, creating all those potential copies cascades into more work ensuring labelling, symbols, definition queries, and in most importantly data ranges remain consistent (the Scotties and Brier have been held 59 and 94 times respectively). Both laziness and sense of adventure prevailed in my case and I decided to find an easier way to implement my colour-coding. It was at this time I stumbled onto Attribute-driven Symbology (I know so obvious right?). Admittedly, I've never specifically used it before so I was going to learn by doing (with all the help documentation open of course).

I buckled up my outline and background picture markers (just in case), closed

my eyes and hit the attribute-driven properties.

I was pleasantly surprised to be greeted by an Arcade Expression Builder dialog - phew this wasn't going to be too tough. I decided that I would alter the colour of the handle of the curling rock based on the attributes of the host cities; if they hosted more Brier events - Red, if more Scotties then the handle would be Yellow (the standard colour pairing of the rocks in most curling events). This colour-coding would require a simple Arcade expression.

This expression would alter the colour of the rock handle

based on the most frequently occuring event hosted by each city.

With some additional reference to Attribute-driven Symbology documentation pertaining to modifying colour I was able to create a simple expression to control the colour of the rock handle.

// Hold the event count for each city
var brier = $feature.Brier_Host_Count
var scotties = $feature.Scotties_Host_Count

// Evaluate the possible scenarios:
// More Brier events = Red
// More Scotties events = Yellow
// Even count = Grey
When(brier > scotties, "rgb(230,0,0)",scotties > brier,"rgb(255,234,0)","rgb(100,100,100)")

Click 'OK' and 'Apply' a few times and just like that I had a single layer that was consistently scaled by Total_Event_Count and colour-coded by event prevalence.

Now we've got ourselves a game!

Making use of my individual image layers from my rock symbols (another instance where it's helpful to keep the components separate), I created the components of a legend to describe the various symbols - I know the rock sizes still need numeric values, you're getting in on the ground floor here it's a work in progress.

Extents in the House

The piece to cover at this stage is the extent indicators. After sorting out my rock symbology, it became obvious that the clustering of cities within some provinces would be problematic at a Canada wide scale. I'd need to create some insets that helped clarify some of these clusters. Remaining on theme, these round insets begged to be stylized as a curling 'House' (scoring zone). With some additional symbol effects and image fills I was able to give them a pebbled icy appearance (curling ice isn't flat you know).

These aren't perfect, and I'll be working on having them visually shift towards the background as the map progresses but it's a starting point for now. *I'm actually thinking of transfering the extent polygons to a feature layer so I have greater control of where they sit in the stack amongst other map layers.

I think that basically covers everything so far, hopefully it's been entertaining or at the very least you're intrigued, and/or puzzled, by curling. Check back soon for a progress update and see how this map takes shape. Hopefully, by the time I wrap this all up there will be a new Brier champion and I can add a data point to my map.

Thanks for reading - HURRY HARD!

227 views0 comments

Recent Posts

See All