使用pylab在python中绘制数据点

use*_*217 5 matplotlib python-2.7

在此输入图像描述我有数据,我必须绘制

X = [0,1,2,3,4,5] Y = [6,7,8,9,10,11,12,13,14,15]

X属于class1,所以我希望它们以绿色绘制,Y属于class2,所以我希望它们以蓝色绘制.

我做的是,

import pylab as pl
pl.plot(X,'go')
pl.plot(Y,'bo')
pl.show()
Run Code Online (Sandbox Code Playgroud)

但是这是在Y上绘制X.我想在图表中显示的只是绿色和蓝色的点X和Y.

我怎么能做到这一点?

Rob*_*ert 2

它不会绘制 X 对 Y 的图,只是因为 X 和 Y 的长度不同。假设x是变量(横轴)和y结果(纵轴)。通常你会写pl.plot(x,y), 其中xy是相同长度的列表。如果您只给出一个列表,则假定您只给出了一个列表y,并且 matplotlib 将为您创建一个 x 轴,如下所示:

import pylab as pl

y1 = [0,1,2,3,4,5] 
y2 = [6,7,8,9,10,11,12,13,14,15]

x1 = range(len(y1))
x2 = range(len(y2))

pl.plot(x1, y1,'go')
pl.plot(x2, y2,'bo')
pl.show()
Run Code Online (Sandbox Code Playgroud)

所以我认为在你的情况下你应该定义 x 轴。