0

Under symbology in ArcGIS, there's the option to graduate colours given a value field, a colour ramp, and some classification.

How do you make the colour graduation continuous (rather than discrete as with the classification)? Either continuous along an existing colour ramp or by being able to specify colour values directly through functions for each RGB/HSB channel?

It seems like pretty basic functionality to be able to provide more than the maximum of 32 levels of classification, so I hope I'm just missing something. Maybe I'm not using the right terminology because I haven't found any results by searching yet.

  • Who is going to be end user for that? Super human? – FelixIP Aug 14 '18 at 0:02
  • I don't understand your question. For any data that is trying to represent a continuous variable (such as elevation data in a TIN), having only 32 categories will result in very obvious banding. Colouring each shape according to its true value, rather than 1 of 32 bins, will avoid this. Does that make sense? – 10ilgamesh Aug 14 '18 at 0:18
  • Are you looking at a vector or a raster feature? With raster you can use the "Stretch" function in the symbology to apply a colour ramp. With Vector you can use the "Unique Values" and assign the colour ramp based on a feild value. If you daont want the "boundary" of the feature shown, you can set the colour of the outline to nothing. – Keagan Allan Aug 14 '18 at 6:47
  • Thanks @Keagan. I was looking for a vector solution. Using unique values does create the behaviour I'm after, but I feel like I'm abusing the feature by trying to have several million unique values! I might try converting the shape file to raster, so I can manipulate the data more easily. – 10ilgamesh Aug 14 '18 at 19:44
2

Firstly, you can do it using interface provided:

enter image description here

Secondly: it is pointless.

  • Interesting, I didn't realize you could enter a number of classes manually. That's good to know. And as I mentioned in another comment, if the data you're trying to represent is continuous, aggregating it to even 30+ categories loses a lot of information and it looks bad visually due to banding. There's a reason why images aren't limited to 8 bit any more... – 10ilgamesh Aug 14 '18 at 0:27
  • Word classification means splitting something into groups with visible in this case difference. What you're talking about called stretching and there is such option for raster. – FelixIP Aug 14 '18 at 0:33
  • In the question, you can see I refer to the classification method being discrete. Stretching for raster data is just a way to improve the contrast, which isn't really what I'm trying to do. The colours I have already represent the maximum range, it's just that the number of intervals in that range is being limited artificially. Is the only way to actually represent the values of the data without aggregation to convert the data to raster? – 10ilgamesh Aug 14 '18 at 0:41
0

You can specify more than 32 colors using Categories rather than numeric quantities. If you could calculate a field in your data that, e.g., ranged from 'C1' to 'C99', you could then use the Match to a style option.

Setting up such a style would be a tad tedious if you really need 99 colors, but would only need to be done once. For each color, save it (not the whole symbol) to your style with the name. A category for the style would help you find the color names. When you add your layer, choose Match to a style, then navigate to the field where the 'C1' to 'C99' values live. The colors should match by name.

On a somewhat more artistic note, using simple proportional increments to move through colors, values, and saturation levels has problems. Yellow has very little range and doesn't darken or saturate well without moving toward another color (such as orange). It is hard to see the difference in colors as if colors are all equal, i.e., seeing 99 colors as different will require a good eye. I would try playing with the properties of the color ramps (right click to access) under Quantity symbol ramps to work with saturation and hues before trying to pick that many colors.

  • That's still a discrete representation though, just with more bins and way more work. Isn't there a way to actually relate the value of the field directly to the display colour, without losing information by aggregating it? – 10ilgamesh Aug 14 '18 at 0:20

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.