Change Default White for Zero in Contour Plot

18 次查看(过去 30 天)
How can I change the default white for zero for the output of a contour plot to a different color?
longitude = [80 82 95]
latitude = [30 32 35]
temp = [0 0 0; 0 0 0; 0 0 0]
contourf(longitude,latitude,temp)
Thanks,
Amanda

采纳的回答

Matt Fig
Matt Fig 2012-11-27
That produces no contour plot at all...
C = contourf(longitude,latitude,temp)
Warning: Contour not rendered for constant ZData
> In contourf>parseargs at 455
In contourf at 55
C =
[]
An empty C means nothing was produced. To see that there is nothing there (not just some white contours), do this:
set(gca,'color','k')

更多回答(2 个)

Walter Roberson
Walter Roberson 2012-11-27
contourf() does not default to white for 0. contourf() defaults to the first entry in the active colormap for the smallest value in the data. If that smallest value happens to be 0, then you can change the color by changing the colormap. For example,
colormap(hot)
  2 个评论
Amanda
Amanda 2012-11-27
Walter,
But when I have an array of all zeros it is white, but 0.00001 is colored in. How can I get around this?
Amanda
Walter Roberson
Walter Roberson 2012-11-27
You don't. If your array is constant data, contourf() will not plot it at all. You need to use at least two distinct values.
Are you really trying to plot a contour for an all-zero matrix, or are you trying to plot the z=0 plane to add to an existing contour plot?

请先登录,再进行评论。


houda
houda 2016-8-2
Hi,
I have the same problem. I have a matrix which change value, so when it contains non constant value it is okay, but when it contains the same value (1 or 0) I want to have either the color corresponding to 1 or to 0. I know that the problem is that contourf don't calculate it that is why I have nothing, but there is any other function to have what I want ?
Thank you for your help!

类别

Help CenterFile Exchange 中查找有关 Contour Plots 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by