2014-09-23 1 views
0

Я новичок в matlab gui desgining. Я пытаюсь построить переменные из рабочей области. Мне нужно построить три разные переменные вместе на одном и том же сюжете с разными цветами. Мой код выглядит нравится это: попробуйтеКак изменить цвет графика, когда он вызван в функции evalin в matlab?

evalin('base',['plot(',a,',',x,')']) 
grid on 
hold on 
evalin('base',['plot(',a,',',y,')']) 
hold on 
evalin('base',['plot(',a,',',z,')']) 

поймать экс errordlg (... ex.getReport ('основной'), 'Ошибка при создании линейного участка', 'модальный') конец

Как могу ли я внести изменения в команду evalin, чтобы сделать графики разных цветов для каждого набора переменных. Пожалуйста, помогите

+0

Я никогда не использовал Evalin, но вы пробовали C = [1 0 0]; evalin ('base', ['plot (', a, ',', z, ',', Color, 'C') ']) –

+0

Да, это говорит о неопределенной функции или переменной Color – gaurav

+0

Если в нем говорится, что, вероятно, я сделали ошибку в коде, который я опубликовал. Не копируйте его, но установите для свойства Color значение C. –

ответ

0

Простейшим способом было бы заменить команду hold on на hold all, что приведет к тому, что последующие команды графика будут выполнять цикл по умолчанию по умолчанию.

(Примечание: вам нужно только один hold on/hold all здесь)

Если вам нужно выбрать определенные цвета для ваших участков, вы можете указать форматирование строки так же, как в обычной plot команды. Просто помните, что для того, чтобы сделать одну цитату внутри строки, вы должны ее избежать, используя два ('').

plot(1:10,1:10,'r'); 

становится

evalin('base','plot(1:10,1:10,''r'')') 
+0

спасибо, он, наконец, работал таким образом evalin ('base', ['plot (', a, ',', x, ',' 'r' ')']) провести все evalin ('base', ['plot (', a, ',', y, ',' 'b' ')']) провести все evalin ('base', ['plot (', a,', ', z,', '' k '') ']) сетка на – gaurav

Смежные вопросы