bar3 Axis labels don't reflect real data
Ältere Kommentare anzeigen
I'm trying to plot Z bars against X and Y with more than a few data points. I would like the x and y axis labels to be the real x and y data. Using the example code below, each x and y bar should correspond to its X and Y axis data - but they don't. Plus, the tables change as I re-size the chart. I'm sure I'm just missing something simple.
surf() plots the correct axis, but the data points are not really connected in real life, so that plot is not really appropriate.
Here's and example:
format shortg
xAxis = sort(10*rand(20,1));
sprintf('XMin: %5f xMax: %5f', [min(xAxis) max(xAxis)])
yAxis = sort(30*rand(30,1));
sprintf('yMin: %5f yMax: %5f', [min(yAxis) max(yAxis)])
bar3(rand(20,30));
set(gca,'XTickLabel',xAxis)
set(gca,'YTickLabel',yAxis)
Antworten (2)
Tom
am 17 Jun. 2013
Try scaling the tick marks based on the limits you've defined:
format shortg
xAxis = sort(10*rand(20,1));
sprintf('XMin: %5f xMax: %5f', [min(xAxis) max(xAxis)])
yAxis = sort(30*rand(30,1));
sprintf('yMin: %5f yMax: %5f', [min(yAxis) max(yAxis)])
bar3(rand(20,30));
tick = get(gca,{'XTick','YTick'});
x = linspace(min(xAxis),max(xAxis),length(tick{1}));
y = linspace(min(yAxis),max(yAxis),length(tick{2}));
set(gca,'XTickLabel',x)
set(gca,'YTickLabel',y)
Madison
am 26 Feb. 2014
0 Stimmen
This was really helpful. Thanks!
Kategorien
Mehr zu 2-D and 3-D Plots finden Sie in Hilfe-Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!