Properties of the plot marker shapes
3 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
In answering this question, I realized that I do not understand how MATLAB defines its markers in plots. For a marker of a given size plotted at a point (x,y), what defines where it will be "centered" and its width and height?
If I create a square axis with x and y limits of -1 to 1 that is scale inches high and wide
scale = 4;
set(gca, 'Units', 'Inches')
set(gca, 'Position', scale*[0.25, 0.25, 1, 1])
set(gca, 'YTickLabel', [])
set(gca, 'XTickLabel', [])
axis([-1, 1, -1, 1])
axis square
box on
hold on
and then plot all the symbols to be scale*72 units big (since there are 72 points in an inch)
plot(0 , 0, '.', 'MarkerSize', scale*72);
plot(0 , 0, 'o', 'MarkerSize', scale*72);
plot(0 , 0, 'x', 'MarkerSize', scale*72);
plot(0 , 0, '+', 'MarkerSize', scale*72);
plot(0 , 0, '*', 'MarkerSize', scale*72);
plot(0 , 0, 's', 'MarkerSize', scale*72);
plot(0 , 0, 'd', 'MarkerSize', scale*72);
plot(0 , 0, 'v', 'MarkerSize', scale*72);
plot(0 , 0, '^', 'MarkerSize', scale*72);
plot(0 , 0, '<', 'MarkerSize', scale*72);
plot(0 , 0, '>', 'MarkerSize', scale*72);
plot(0 , 0, 'p', 'MarkerSize', scale*72);
plot(0 , 0, 'h', 'MarkerSize', scale*72);
I get the following result

The documentation say . is plotted at 1/3 the size. If you scale it up, then . and o are the same size.
It doesn't appear that the symbols are equal diameter, radius, or area. I don't think they are equal circumference (although I haven't proven that to myself yet). It looks like they might be centered on the center of gravity, but again I have proven this yet.
Do the marker sizes and locations make sense from a graphical representation standpoint?
0 commentaires
Réponses (0)
Voir également
Catégories
En savoir plus sur Surface and Mesh Plots dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!