bar3 Axis labels don't reflect real data
Afficher commentaires plus anciens
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)
Réponses (2)
Tom
le 17 Juin 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
le 26 Fév 2014
0 votes
This was really helpful. Thanks!
Catégories
En savoir plus sur 2-D and 3-D Plots dans Centre d'aide et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!