如何在同一张图中绘制两个列表,但颜色不同?

Alb*_*rez 6 python matplotlib

请帮我在同一张图上绘制两个列表。线条应该是不同的颜色。这是我试过的代码:

import matplotlib.pyplot as plt 
train_X = [1,2,3,4,5] 
train_Y = [10, 20, 30, 40, 50] 
train_Z = [10, 20, 30, 40, 50,25] 
alpha = float(input("Input alpha: ")) 
forecast = [] for x in range(0, len(train_X)+1):  
    if x==0:       
        forecast.append(train_Y[0])  
    else:  
        forecast.append(alpha*train_Y[x-1] + (1 - alpha) * forecast[x-1])
plt.plot(forecast,train_Z,'g') 
plt.show()
Run Code Online (Sandbox Code Playgroud)

小智 9

根据matplotlib.pyplot.plot,用 绘制多个集合[x], y, [fmt]。如果y没有相应的传递x,则将y按顺序绘制range(len(y))

散点图

import matplotlib.pyplot as plt

y1 = [1,2,3,4,12,15]
y2 = [1,4,9,16]

plt.plot(y1, 'g*', y2, 'ro')
plt.show()
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

线图

plt.plot(y1, 'g', y2, 'r')
plt.show()
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述


小智 8

您应该使用plt.plot两次来绘制两条线。

我不知道你的 X 轴是什么,但显然你应该创建另一个数组/列表作为你的 X 值。

然后使用plt.plot(x_value,forecast, c='color-you-want')plt.plot(x_value,train_z, c='another-color-you-want')

. 有关更多详细信息,请参阅pyplot文档。