For a known number of plots on the same axis, how do I set the colourscale?
1 次查看(过去 30 天)
显示 更早的评论
采纳的回答
Voss
2024-3-5
data = (1:100).'+(1:20);
n_lines = size(data,2);
colors = jet(n_lines);
figure
colororder(colors);
plot(data)
4 个评论
Voss
2024-3-9
If the colors are repeating, to prevent that from happening, use (at least) as many colors as you have lines.
- If the number of lines is known in advance of plotting, construct the colormap with that many lines, as shown in my previous comment where I used a jet colormap with 8 colors to color 8 lines.
- If the number of lines is not known in advance or changes as the code runs, you'll have to update the set of colors and apply that to colororder.
However, are you sure the colors are repeating? From the screen shot, I cannot say for sure that's what's happening. It may just be that the line color order is not the same as the line order in the y-direction on the plot. For example, if the first line you plot is of the first color in the colormap and is the bottommost (lowest y) line on the plot, the second line is of the second color and is the second-lowest line, and so on, then yes, it looks like the lines are out of order with what might be a typical colormap. But I don't know that the lines are in that order in terms of the y on the plot, and I don't know what the colormap is.
If you are already using (at least) as many colors as lines, or changing that doesn't fix the problem, please share some code I can run to take a look.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Colormaps 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!