我有两组数据,第一组数据是一维列表,第二组数据是二维列表。我想绘制一个散点图,第一组数据为x,第二组数据为y。但是,2D列表中元素的长度不相同,例如,x = [1,2,3] y = [[1,2],[3,4,5],[7,6]] ,所以当我尝试绘图时,我收到警告
ValueError: setting an array element with a sequence.
如何解决这个问题?感谢
答案 0 :(得分:1)
我假设你不想在他们不存在的情况下绘制积分。您可以将这些替换为None,以下内容应该有效:
import numpy as np
import matplotlib.pyplot as plt
#Define arrays
x = [1,2,3]
y = [[1,2], [3,4,5],[7,6]]
#Padd y with None to length of x
for i in y:
while len(i) < len(x):
i.append(None)
for yn in y:
plt.scatter(x,yn)
plt.show()