Как да задам осите в диаграма на комета в matlab

Правя диаграма на комета, която работи добре при начертаване на действителната крива, докато "времето" се развива. Проблемът ми е, че осите винаги се регулират така, че графиката да запълва напълно фигурата. В този случай графиката е елипса и бих искал осите y и x да имат еднакъв диапазон, така че да има известно пространство между елипсата и границите на прозореца на фигурата.

Опитах да поставя axes([-18 18 -18 18]) и axes equal навсякъде.

Опитах се да използвам нещо подобно (r12 е моята x- и y-координатна матрица)

ax=axes;
set(ax,'xlim',[-18 18],'ylim',[-18 18]);
comet(ax,r12(:,1),r12(:,2))

но MATLAB продължава да поставя оста y на [-3 3] и оста x на [-1 18] (поради моите данни елипсата е приблизително 6 на 18).

Как да направя диаграмата на кометата с предварително зададени оси?


person user1729770    schedule 31.10.2012    source източник
comment
Мисля, че поставянето на set(ax,'xlim',[-18 18],'ylim',[-18 18]); след извикването на comet трябва да свърши работа   -  person Andrey Rubshtein    schedule 31.10.2012
comment
изглежда не помогна, за съжаление. Командата hold(ax) обаче успя   -  person user1729770    schedule 31.10.2012


Отговори (1)


Гледайки кода comet, може да имате малка грешка в ръката си.

Едно възможно решение е да приложите команда hold към вашите оси:

ax=axes;
set(ax,'xlim',[-18 18],'ylim',[-18 18]);
hold (ax)
comet(ax,r12(:,1),r12(:,2))
person Rasman    schedule 31.10.2012