# Setting line colour between two matrix plots on the same graph

1 view (last 30 days)
William Gray on 14 Apr 2020
Commented: William Gray on 17 Apr 2020
Hi everyone, so I'm sure there is a simple answer to this but I can't quite figure it out. Say I have two 4x4 matracies, X and Y that I want to plot on the same graph against the same variable Z, I am currently doing something like this:
plot (X,Z,'.')
hold on
plot (Y,Z,'*')
title ({title})
legend ('X','Y')
I am wanting the colour of the plots X and Y to match up for different Z values. So for example, X(:,1) and Y(:,1) are both red, X(:,2) and Y(:,2) both green etc...
I hope that explenation makes sense, any help would be very much appreciated. I know I could use a for loop to just plot the columns individually and then set the colour but I thought there may be a much quicker way?
Thanks,
Will
##### 0 CommentsShow -1 older commentsHide -1 older comments

Sign in to comment.

### Accepted Answer

Ameer Hamza on 14 Apr 2020
Edited: Ameer Hamza on 14 Apr 2020
You just need to reset the color order index every time you start the colors from the beginning
X = [1 2 3 4; 1 2 3 4; 1 2 3 4; 1 2 3 4]';
Y = [1 2 3 4; 1 2 3 4; 1 2 3 4; 1 2 3 4]'+4;
Z = [1 2 3 4; 1 2 3 4; 1 2 3 4; 1 2 3 4]'+(1:4);
ax = axes();
plot (X,Z,'.')
hold on
ax.ColorOrderIndex = 1; % <--- reset the ColorOrderIndex to 1
plot (Y,Z,'*')
##### 1 CommentShow NoneHide None
William Gray on 17 Apr 2020
Thank you, that worked perfectly!

Sign in to comment.

### Categories

Find more on Title in Help Center and File Exchange

### Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!