Ask A Cartographer

pre-defined symbols

July 14 2011 | 3 comments
Categories: Symbology

How do I make a dataset automatically display pre-defined symbols when I add it to a map? I would like to set pre-defined symbology for datasets in ArcSDE, so that when users add them to ArcMap they are automatically set. I know I can do this with a layer file, but I have some datasets that do this, too. These datasets came from USGS and I'm not sure how they set them up to display a given symbology set automatically.

Mapping Center Answer:

The only way to do this is to have a style referenced that has a symbol with exactly the same name as the value in the attribute that you want to use to apply teh symbology.  For example, if you have an attribute called RoadType and there are values in it like "Major Road", "Minor Road, "Arterial", etc... AND you have a style referenced thad has symbols called "Major Road", "Minor Road, "Arterial", etc... then when you add the data in ArcMap the features will automatically be displayed with the right symbol.  Note that no other referenced style can contain those symbols as well or the wrong symbology might be applied.

Symbols librarys and templates. posted by Peter Goodman on Jul 14 2011 10:51AM
I will try to describe exactly how I do the very same thing in a step by step process:

1: Set the style reference in a directory that everyone will use. To do this, go into your Table of Contents (TOC) and double click any item in it. (Note: each item is set differently based on the type of feature it is. Point, line Polyline, Text, etc.) Or; right click and click on “Properties”. Go to the “Symbology” tab. Regardless of which category or way to get there you use, you want to see the Symbology window.

2: Double click symbol you want to change/create. Inside the “Symbol Selector”, Set the style, font size, colors, etc and then click the “Save As…” button.
This will bring up the “Items Properties” manager. Here, you set your style “Name” to whatever name you will reference. I.e. “NMDOT_Arroyos_50 year”
You will then set the Category. Here is where you will create a library of styles. As each style is created and set, you can save it to the library that you create.
I.e: “NMDOT Symbols.” Set the directory: When you set the directory, you can browse for where it is located at. *see step 1.
Leave the tags alone unless you intend to use a search field for this.
Once you save the style, it will stay inside your style manager.

3: Once all style library is created, you can then set other machines to reference the style two ways:
Either through a template, or manually.
If set to a template, no other changes need to be made as long as the template map accessed is an .mxd extension, and not the .mxt.

A tutorial on Map Templates is found here: http://training.esri.com/acb2000/showdetl.cfm?did=6&product_id=950

If setting manually, follow these steps:

a) In any new or previously made map, double click on a feature in the TOC.

b) Double click the feature you want to change and when the “Symbol Selector” Dialogue box comes up, click on the “Style References…” button.

c) Click on the “Add Style to List…” and browse for the directory your library is located in.

d) Click on the desired style library and click “Open”.

e) In new maps you will want to click the “Set as Default List…” button, and this will default the library to that map. Click “Ok”.

f) Click “Ok” in each previous window and your symbol library will be set. Now, as each symbol come up for setting in each new map, (and as long as you set a new map from a map template) you can refrance the library, edit and add as you wish.

HOWEVER!!!! A note on the library set: As you change a symbol and add it to the library, it will NOT overwrite the previous symbol. Instead it will create a new copy of the original that you MUST BE SURE to create a new name for each time.

If you have one single Feature in the TOC with many multiple symbol levels, types, points, text features etc, you can save the Feature as a layer File. When this is done and saved to a network directory, it can be accessed repeatedly and the styles will show with all textual aspects shown.

Simply re-direct the link feature to the desired feature in a Geodatabase or folder, and re-name. All colors and other features will be already made.

CAUTION: any changes made by adding or subtracting columns to any new feature attribute set PREVIOUS to re-linking the layer will result in FDO errors and possibly no display.
not working posted by Stephanie Snider on Jul 21 2011 9:41AM
I followed your steps for creating the style set and saving symbols, but it didn't work. When I brought in the style library, the symbols that I saved were not there. Also I need this to work on data in ArcSDE - on a central Oracle server. I have one dataset (USGS Streams) in ArcSDE that displays symbology cateogires automatically (without having to manually import a style manager). I would like for some of my other datasets to work in this way, but I don't think the style reference has anything to do with it. When I change my style reference to a new style sheet (nothing in it) and add the USGS Streams layer, the dataset still displays as before (with he old style sheet). This is why I think there is something more going on with the dataset to make it display symbol categories than the style sheet that my ArcMap session happens to be defaulted to.
SDE should not be a problem posted by Aileen Buckley on Aug 2 2011 1:41PM
You should definitely be able to see any style that you created if you reference it correctly, so there is no reason that this should not work for you. Be sure to create a style in a location that you can navigate to later when you want to reference it again. Note the name and the permissions for that location -- maybe you did not accurately find the file or maybe there was a permission issue causing it not to be referenced.

Also SDE should not cause any problems -- symbols and styles should work the same for SDE data as other data.

Also, note that you can "Import" symbology from an existing layer to another layer so this might be another approach to solving your problem.

If you would like to post a comment, please login.

Contact Us | Legal | Privacy |