Я хотел бы иметь возможность выбирать цвета для многострочного графика, но не могу его получить. Это мой код
colors = {'b','r','g'}; T = [0 1 2]'; column = [2 3]; count = magic(3); SelecY = count(:,column), plot(T,SelecY,'Color',colors{column});
Почему-то я не мог заставить его работать без ручек, но:
h = plot(T,SelecY); set(h, {'Color'}, colors(column)');
У меня работает.
Таким образом, вы можете указать только один цвет за раз, и он должен быть указан как вектор RGB с 3 элементами.Ваши три маршрута:
Прокрутите и укажите цвета по строке, как у вас:
hold on for i=1:size(SelecY, 2) plot(T, SelecY(:,i), colors{i}); end
Использование цвета RGBСпецификация, вы можете передать цвета через свойство 'Color', как вы пытались сделать выше:
cols = jet(8); hold on for i=1:size(SelecY, 2) plot(T, SelecY(:,i), 'Color', cols(i,:)); end
Также, используя способ RGB, вы можете указать ColorOrder впереди, а затем позвольте matlab циклически пройти:
ColorOrder
set(gca, 'ColorOrder', jet(3)) hold all for i=1:size(SelecY, 2) plot(T, SelecY(:,i)); end
Для установки цветов после факта см. другой ответ.