Pergunta

Eu estou usando gráficos polares (POLAR (THETA, RHO)) em MATLAB.

Existe uma maneira fácil de corrigir o intervalo para o eixo radial dizer, 1,5?

Eu estou procurando algo análogo à xlim, comandos ylim para eixos cartesianos. Não encontrei nada nos docs ainda.

Foi útil?

Solução

Aqui está como eu era capaz de fazê-lo.

O enredo polar MATLAB (se você olhar para o punho opções de gráficos disponíveis) não tem qualquer coisa como xlim ou ylim. No entanto, percebi que a primeira coisa plotados sets a faixa, assim que eu era capaz de traçar uma função com raio de alcance [-.5 .5] em [-1 1] enredo da seguinte forma:

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');

Isso não parece muito bom e espero que há uma maneira melhor de fazer isso, mas funciona.

Outras dicas

Isso funcionou para mim ... Eu queria que o raio de alcance para ir para 30, então eu plotados pela primeira vez esta

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

e depois plotados o que eu estava realmente interessado. Neste primeiro ponto traçado está escondido por trás das marcas de grade. apenas certifique-se de incluir

hold off

após o seu comando final plotagem.

Uma solução simples é fazer um gráfico falso e defina sua cor para branco.

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

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

Em caso de alguém se depara com isso, aqui está o Solução:

As Scottie T e gnovice apontou, Matlab, basicamente, usa a função polar como uma interface para o padrão parcelas, mas com um monte de formatação nos bastidores para torná-la polar. Olhe para os valores das propriedades XLim e YLim de um lote polar e você vai perceber que eles são literalmente os limites xey de seu enredo em coordenadas cartesianas. Assim, para definir um limite de raio, o uso xlim e ylim, ou eixo, e ser esperto sobre os valores definidos:

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

... isso é tudo que existe para ela. Feliz Matlabbing:)

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top