2015-04-08 4 views
0

При редактировании файла .fig matlab я хочу поменять оси x и y, не перерисовывая график по коду (без изменения порядка векторных данных). Существует ли решение для моей проблемы? Есть ли опция в меню свойств фигуры? Заранее спасибо.Переключить оси на .fig matlab

ответ

2

В дополнении к ответу Луис «s вы можете установить текущую осях View свойства [90 -90] непосредственно от инспектора свойств.

Программным это эквивалентно следующему:

set(gca,'View',[90 -90]) 

Примечание:

Благодаря Луис для коррекции. С помощью [-90 90] происходит замена оси, но тогда вам необходимо изменить направление оси y. Поэтому лучше использовать [90 -90].

Простой пример:

Перед свопа:

enter image description here

И затем после изменения вида:

enter image description here

+0

Я собирался добавить, что! Это предпочтительный подход, я думаю, –

+1

Но я думаю, вам нужно '[90 -90]' (а не '[-90 90]'). Таким образом ось _x_ увеличивается вправо (не влево) –

+0

Ах да, вы правы! С '[-90 90]' нужно было бы изменить направление оси y. Благодаря! И +1, а ваше решение очень удобно. –

1

Вы можете получить прямой доступ к 'XData' и 'YData' свойству каждого участка и поменять их местами:

c = get(gca,'children'); %// get children of axes 
for n = 1:numel(children); %// for each children 
    set(c(n),'XData',get(c(n),'YData'),'YData',get(c(n),'XData')); %// swap XData, YData 
end 
Смежные вопросы