Effacer les filtres
Effacer les filtres

Same color for different subplots

8 vues (au cours des 30 derniers jours)
Ale_798
Ale_798 le 11 Sep 2023
Commenté : Dyuman Joshi le 19 Sep 2023

I want to plot some data in two subplots. To each datum are associated two parameters, which are the ones I'd like to plot, one for each subplot. I want the subplots to have the same color for the two parameters associated to the same datum, but different from the other ones, like in the picture. How can I do that?

  3 commentaires
Ale_798
Ale_798 le 11 Sep 2023
Ok thanks, I understood what you mean. Then I need to define an array of 10 different colors: can you help me with that please?
Dyuman Joshi
Dyuman Joshi le 19 Sep 2023
"can you help me with that please?"
@Ale_798 Please check my answer below.

Connectez-vous pour commenter.

Réponses (1)

Dyuman Joshi
Dyuman Joshi le 11 Sep 2023
"Then I need to define an array of 10 different colors:"
Yes.
RGB colors are a 3 element vectors with values in the range [0, 1].
There are multiple ways to do that.
1 - Manually defining colors. In the method, you have the choice of choosing which colors you want to use.
color = [0 0 0; %black
0 0 1; %blue
0 1 0; %green
0 1 1; %blue+green=cyan
1 0 0; %red
1 0 1; %red+blue=magenta
1 1 0; %rea+green=yellow
0.5 0.5 0.5; %gray
0.5 0 0; %maroon
0 0.5 0; %lime
]
color = 10×3
0 0 0 0 0 1.0000 0 1.0000 0 0 1.0000 1.0000 1.0000 0 0 1.0000 0 1.0000 1.0000 1.0000 0 0.5000 0.5000 0.5000 0.5000 0 0 0 0.5000 0
2 - Using rand and randi. Note - This method will generate colors randomly.
n = 10;
color = rand(n,3)
color = 10×3
0.0286 0.5651 0.7392 0.9416 0.7187 0.7692 0.3686 0.2638 0.6682 0.4783 0.1181 0.7678 0.0093 0.4585 0.2831 0.3646 0.6859 0.4248 0.9145 0.4302 0.2375 0.6649 0.6619 0.6372 0.1268 0.7734 0.8096 0.2958 0.6138 0.6917
color = (randi(256,n,3)-1)/255
color = 10×3
0.1882 0.6941 0.8627 0.7451 0.5529 0.5882 0.0941 0.9686 0.4392 0.9176 0.2314 0.9137 0.9294 0.3176 0.5216 0.0627 0.2314 0.5804 0.9922 0.6510 0.9059 0.6471 0.3529 0.1294 0.2667 0.1333 0.9098 0.0667 0.8510 0.0275
3 - Using in-built colormaps in MATLAB
color = hsv(n)
color = 10×3
1.0000 0 0 1.0000 0.6000 0 0.8000 1.0000 0 0.2000 1.0000 0 0 1.0000 0.4000 0 1.0000 1.0000 0 0.4000 1.0000 0.2000 0 1.0000 0.8000 0 1.0000 1.0000 0 0.6000

Community Treasure Hunt

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

Start Hunting!

Translated by