# How to get this kind of plot

1 Ansicht (letzte 30 Tage)
Edward am 16 Nov. 2013
Kommentiert: Edward am 18 Nov. 2013
I have 3d discrete dataset where for every independent variable x and y there is a frequency value z.
I want to plot it like the chart below:
How do i do this?
Thanks
##### 2 KommentareKeine anzeigenKeine ausblenden
per isakson am 16 Nov. 2013
Hint:
imagesc( magic(12) )
Edward am 16 Nov. 2013
Thankyou! is there anyway i can change the 0 color to something other than blue?

Melden Sie sich an, um zu kommentieren.

### Akzeptierte Antwort

per isakson am 16 Nov. 2013
Bearbeitet: per isakson am 17 Nov. 2013
It requires a bit of code to make this plot.
• select a suitable colormap (You might have to define your own. See colormapeditor.) Let ix=1 be white.
• map the frequences to the colormap-indicies, e.g [1:64] (should have been [2:64]). Assign 1 to missing values or whatever white means.
• use image - not imagesc
• fix the axes ticklabels
or better(?)
• select the colormap of your choice and add an extra row for the "missing-value-color"
• map frequency to the "colormap" and missing-value to the "extra row".
• the colorbar ticklabels will require some extra work
I use the approach described above. Pro: I get full control of the colors and the resulting code is fast. Con: requires some coding and testing.
pcolor might offer a simpler way. Try
x = [1:8];
y = [1:8];
z = x' * y ;
z(4:5,7) = nan;
pcolor( x, y, z )
Note, this gives a plot with 7x7 squares.
##### 2 KommentareKeine anzeigenKeine ausblenden
per isakson am 17 Nov. 2013
Edward am 18 Nov. 2013

Melden Sie sich an, um zu kommentieren.

### Kategorien

Mehr zu Blue finden Sie in Help Center und File Exchange

### Community Treasure Hunt

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

Start Hunting!

Translated by