Change upper limit of HSV colormap

4 visualizaciones (últimos 30 días)
newbie9
newbie9 el 5 de Nov. de 2018
Comentada: newbie9 el 6 de Nov. de 2018
Is there any way to change the upper limit of the HSV colormap (https://www.mathworks.com/help/matlab/ref/hsv.html), so that the high and low aren't both red?
Example application: Data ranges from 1 to 10; values of 1 and 10 both plot as red

Respuesta aceptada

newbie9
newbie9 el 6 de Nov. de 2018
This actually is what I was looking for; the above answers are helpful for manipulating the HSV matrix, but this by-passes that need: https://www.mathworks.com/help/matlab/ref/jet.html
  2 comentarios
Image Analyst
Image Analyst el 6 de Nov. de 2018
jet is a different colormap than hsv so I don't know how this answers your question. It's not merely rotated through hues or changing what color of the hsv colormap is at the top of the colorbar. There are other colormaps like parula, summer, winter, hot, etc.
newbie9
newbie9 el 6 de Nov. de 2018
Question was, how to prevent high and low ends from both showing up as red? Trying something other than HSV is an acceptable answer.

Iniciar sesión para comentar.

Más respuestas (2)

Walter Roberson
Walter Roberson el 5 de Nov. de 2018
The hsv color map is sorted by first component, which is Hue. It is a feature of hsv hue that hue is an angle in a circle, and since circles circle, both high and low angles are red hues, same as the fact that both 1 degree and 359 degrees are nearly the same place in a circle.
You could sort hsv() with respect to a different column and colormap() the results. Or you could do something like hsv() for twice as many colors as you need and then throw away the last half and colormap() what is left.
  1 comentario
newbie9
newbie9 el 5 de Nov. de 2018
Editada: newbie9 el 5 de Nov. de 2018
That makes sense, thank you for the explanation and advice

Iniciar sesión para comentar.


Image Analyst
Image Analyst el 5 de Nov. de 2018
Try circshift() to rotate the colormap vertically.
  2 comentarios
newbie9
newbie9 el 5 de Nov. de 2018
I didn't know about circshift(), thank you
Image Analyst
Image Analyst el 5 de Nov. de 2018
But it works, right?
You can also use caxis() to specify what values in your data correspond to the upper and lower colors. This will allow you to use just a part of the colormap.
Finally, you can just create your own colormap N-by-3 array if you want to use that with the colormap() function.

Iniciar sesión para comentar.

Categorías

Más información sobre Color and Styling en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by