[GIS] method to have the colour of a label automatically match the colour of the polygon indicated in the symbology tab

arcgis-desktopcolorlabelingsymbology

My job requires that I produce several print maps every day, for a variety of different users. It is usually pretty straight-forward, but sometimes I have to make a map that uses rather confusing/overlapping data for people who are unfamiliar with the subject matter.

Is there a method to have the colour of a label automatically match the colour of the polygon indicated in the symbology tab? I realize I can select 'Define classes of features and label each class differently' and 'Get Symbol Classes' under the Labels tab, but I still have to manually enter the CMYK values for each symbol class, as each label is automatically set to black.

If there was a method to set the colour automatically, my job would be much less tedious.

Best Answer

Probably not the answer you are looking for, and I don't know there may actually be something within ArcPy that may let you work with labeling and symbology properties like that, though I don't personally know of such. However, as far as time savers along that lines, a few things would be, if you use consistent color ramps or consistent colors in your symbology, you could actually save those colors as custom colors so when picking a color instead of typing in individual RGB or CMYK values you can just click on your color in the drop down. Also, you can do this same type thing with label styles, you could set up standard label styles (color, font, size, halo, spacing, etc... ) and save those so that instead of clicking on the label style properties for each label class and then manually setting each specific property, you just pick your custom label style. Both of these you should be able to click around their appropriate dialog boxes and find a save button, if not let me know and I'll try and describe where they are.

Also though, you make it sound like you may have a situation where you get the same kinds of datasets each day, just with that day's values, but in general they are the same schema, the same domains, the same range of possible values, etc... I have no clue if this is true, but if it is, you could also set up always go in at some point, aggregate several days worth of datasets (merge tool or something similar) to get a dataset with the same schema as the dataset you are normally mapping out but having all the possible values you may encounter in your symbol class field. Then you go in, set that up with symbol and label classes in ArcMap and save that layer file. Then each time you get newly updated data for that dataset, you just bring in that layer file you saved, go to the source tab and change the source to the new dataset (current data) of the same schema, and there you go it should work if your template layer file was prepped correctly (make sure to use some sort of show all others options just in case you missed a few possible values). I hope that makes sense, but again, if not, let me know and I'll try and clarify.

Again, sorry for not having the perfect answer, but I hope it helps at least a little.