How can I plot 18 lines in different colors on a single plot?
显示 更早的评论
Hi everyone!
I have to plot 18 different functions of time, all in one single figure. How can i assign 18 different colors? (i work with matlab 2014)
Thanks.
采纳的回答
更多回答(2 个)
Bjorn Gustavsson
2023-1-10
For that type of tasks I have had good use of the cmlines-function in the colormap-and-colorbar-utilities toolbox on the file exchange. With that it is as simple as:
ph = plot(randn(18,18));
colormap(turbo)
cmlines(ph(1:12))
colormap(copper)
cmlines(ph(13:18))
(unasked for advice: sometimes my plots become more legible if I also use linewith and linestyle to differentiate between lines)
HTH
the cyclist
2023-1-10
编辑:the cyclist
2023-1-10
0 个投票
If your version of MATLAB is 2019b or later, I suggest the colororder function. (I see that you mention an older version, so this may be more for other folks who come across this question.)
And for that many colors, I would recommend using a utility like this one for defining maximally distinguishable colors (and/or using different plotting symbols and line styles.)
1 个评论
Bjorn Gustavsson
2023-1-10
Hopefully there are some more "natural" ordering and/or grouping of the function to plot, and then it might be way better to one distinct colormap per group of curves to guide the viewer.
类别
在 帮助中心 和 File Exchange 中查找有关 Color and Styling 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

