You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Matplotlib(Python)中为多条折线设置独立颜色的问题排查

问题原因

你写的两层嵌套循环逻辑错误:外层循环遍历颜色时,内层循环会把所有折线都用当前颜色重新绘制一遍。比如第一次循环用橙色画6条线,第二次用绿色覆盖重画6条……直到最后一次用粉色完成所有折线的重绘,所以最终显示的全是最后一个颜色的折线。

修复方法

方法1:用zip配对颜色与数据(推荐)

直接将颜色列表和数据列表一一对应遍历,写法简洁直观:

colours = ["#ffa500", "#008000", "#ff0000", "#800080", "#7f6000", "#ffa7b6"]
lists = [list1, list2, list3, list4, list5, list6]

for colour, data in zip(colours, lists):
    plt.plot(x, data, color=colour)

方法2:按索引遍历(适合新手理解)

通过索引同时获取对应位置的颜色和数据,只需一层循环:

for i in range(len(lists)):
    plt.plot(x, lists[i], color=colours[i])

⚠️ 注意:要保证colours和lists的长度完全相同,否则会出现索引越界错误。

内容的提问来源于stack exchange,提问作者canderous

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 04:15:17