Pregunta

Estoy usando gráficos polares (POLAR (THETA, RHO)) en MATLAB.

¿Hay una manera fácil de arreglar el rango para que el eje radial diga 1.5?

Estoy buscando algo análogo a los comandos xlim, ylim para ejes cartesianos. No he encontrado nada en los documentos todavía.

¿Fue útil?

Solución

Así es como pude hacerlo.

El diagrama polar de MATLAB (si observa las opciones de Handle Graphics disponibles) no tiene nada como xlim o ylim. Sin embargo, me di cuenta de que lo primero que se trazó establece el rango, por lo que pude trazar una función con un rango de radio [-.5 .5] en un diagrama [-1 1] de la siguiente manera:

theta  = linspace(0,2*pi,100);
r      = sin(2*theta) .* cos(2*theta);
r_max  = 1;
h_fake = polar(theta,r_max*ones(size(theta)));
hold on;
h      = polar(theta, r);
set(h_fake, 'Visible', 'Off');

Eso no se ve muy bien y espero que haya una mejor manera de hacerlo, pero funciona.

Otros consejos

esto funcionó para mí ... quería que el rango de radio fuera de 30, así que primero tracé esto

polar(0,30,'-k')
hold on

y luego trazó lo que realmente me interesaba. Este primer punto trazado se oculta detrás de las marcas de la cuadrícula. solo asegúrate de incluir

hold off

después de su comando de trazado final.

La solución simple es hacer un gráfico falso y establecer su color en blanco.

fake=100;
polar(0,fake,'w');
hold on;

real=10;
polar(0,real,'w');

En caso de que alguien más se encuentre con esto, aquí está la solución :

Como Scottie T y gnovice señalaron, Matlab básicamente usa la función polar como una interfaz estándar tramas, pero con mucho formato detrás de escena para que parezca polar. Observe los valores de las propiedades XLim e YLim de una gráfica polar y notará que son literalmente los límites x e y de su gráfica en coordenadas cartesianas. Entonces, para establecer un límite de radio, use xlim e ylim, o axis, y sea inteligente con los valores que establezca:

rlim = 10;
axis([-1 1 -1 1]*rlim);

... eso es todo lo que hay que hacer. Happy Matlabbing :)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top