How can I plot a 3D histogram using hist3 with log scale?

11 Ansichten (letzte 30 Tage)
Hugo SP
Hugo SP am 20 Nov. 2012
Here is an example code:
x = 1:20;
y = 2*x;
hist3([x' y']);
set(gca,'zscale', 'log');
With the log scale on the Z axis the bars disappear. I think this is because 0 values are mapped to -Inf. I there any workaround for this? I have seen for 2D hist that it is possible to adjust the bar base to 1, but I do not know how to do it for 3D hist.
Thank you.

Akzeptierte Antwort

Matt Fig
Matt Fig am 20 Nov. 2012
x = 1:20;
y = 2*x;
hist3([x' y']);
S = findobj('type','surf');
ZD = get(S,'zdata');
ZD(~ZD) = .1;
set(S,'zdata',ZD);
set(gca,'zscale', 'log');

Weitere Antworten (0)

Kategorien

Mehr zu Log Plots 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