Sybolizing features with multiple attributes

9457
5
01-07-2013 07:26 AM
DavidNagel
New Contributor II
Hello All - I just can't figure out how to symbolize stream lines using two attributes, stream temperature and stream size. For example, if a stream is cold and small, it should be blue and thin. If a stream is warm and large, it should be red and thick.

I have looked at these posts, but they are not solving the problem.
http://forums.arcgis.com/threads/41286-Plotting-two-attributes?highlight=symbolize+attributes
http://forums.arcgis.com/threads/42508-Symbology-Multiple-Attributes-Quantity-by-category?highlight=...

ArcGIS version 10.0

I have a stream network shapefile. I have two attributes in the table, let's call them TEMPERATRE and SIZE.
TEMPERATURE and SIZE are continuous variables. Each stream segment has a unique value. There are 20,000+ stream segments.

I go to Layer Properties > Symbology > Multiple Attributes

I use Value Fields
TEMPERATURE
SIZE

I click Variation by Color Ramp
I choose value (attribute) TEMPERATURE
I set up a 5 class classification with the correct colors, blue to red

I click Variation by Symbol Size
I choose value (attribute) SIZE
I set up 5 sybmol sizes from .5 to 4

Everything looks good. But now if I go back to Variation by Color Ramp, the attribute SIZE is stuck in there rather than TEMPERATURE. My inputs don't seem to stick for the two different attributes, just one or the other.

Maybe a bigger problem is that I can't find anyway to display these colors and sizes that I've set up. When I hit Add All Values I get the default Color Scheme with all values, not the colors I set and not the classes I set. If I hit Add Values... I get an option to add values manually, but I've already set up what I want. The classes and symbology that I set never shows up in the map.

This dialog is driving me crazy. I can only guess that it only works under a "Categories > Unique Values" scenario and that the ability to classify values is simply not connected from the dialog box to the final output. Can anyone help set me straight?

Thank you - Dave
Tags (2)
0 Kudos
5 Replies
by Anonymous User
Not applicable
Original User: rfairhur24

My reading of the help for Multiple Attributes suggests that the unitized value can only be from one field, not two.  The second field just defines unique values and this is not really ideal for continuous values.

I would tackle it by creating multiple layers that use definition queries to define the temperature ranges I wanted and use one of the Quantities symbologies for the widths (probably proportional symbology).  Before creating copies of a base layer I would figure out the full range of color gradations I wanted and write down the color configurations so I could set each layer to a single temperature range color setting.  When I finished all of the layers would be in a group layer.

The legend for the layers would probably have to be created in Illustrator separately and placed as a graphic rather than a live legend.  Possibly some set of legend settings might acheive what you need, but I would focus on making the mapped information appear correct over the legend.

I find that multiple layers with definition queries is necessary for many reasons, since they generally perform better for redrawing than a single layer with very complex symbology and can be easier to tweak to my particular needs.
0 Kudos
by Anonymous User
Not applicable
Original User: dnagel

Thank you Richard, I'll try your solution. I guess the Multiple Attributes function doesn't work as I expected it would. Much appreciated!
0 Kudos
CPoynter
Occasional Contributor III
Hi,

Depending on the number of categories you have, you could try making a unique field with your categories and make custom symbology to match and then symbolise by matching to style.

For example:

Temperature / Size / Category

-20  to -10 / 0.25 / 1
-10 to 0 / 0.5 / 2
0 to 10 / 0.75 / 3
10 to 20 / 1.00 / 4

May be more time consuming, but will give you more control.

Regards,

Craig
0 Kudos
by Anonymous User
Not applicable
Original User: rfairhur24

Hi,

Depending on the number of categories you have, you could try making a unique field with your categories and make custom symbology to match and then symbolise by matching to style.

For example:

Temperature / Size / Category

-20  to -10 / 0.25 / 1
-10 to 0 / 0.5 / 2
0 to 10 / 0.75 / 3
10 to 20 / 1.00 / 4

May be more time consuming, but will give you more control.

Regards,

Craig


This suggestion is best if your data does not change much and is basically a static snap-shot.  If these field values undergo a lot of changes or a lot of new segments will be getting added over time, it can be a pain remembering to recalculate the range fields and symbology categories to stay synchronized.  However, a single calculation can be created that will do all values of the ranges and/or symbol categories using If statements Python/VB Script) or Select Case statement (VB Script).  My suggestion eleminated the synchonization steps to maintain correct symbology as values are updated are segments are added.  Edits should be made on a working layer with no definition queries for purposes of data creation and maintenance, and will post to the new layers when edits are saved or you move off of an edited record.
0 Kudos
DavidNagel
New Contributor II
Thank you Craig, that's another possibility.
0 Kudos