我有三个相同的散点图绘制长度列表:x(浮点),y(浮点)和c(颜色的整数),并希望将x和y列表拆分为由颜色值过滤的子集,以便我可以使用一个传说,描绘了他们的情节
虽然我可以通过x和y列表上的len(c)
循环实现这一点,但它不是非常pythonic,我希望有人可以提供更优雅的东西
我在想类似下面的东西,但它显然不起作用
c_list = list(set(c))
xset = []
yset = []
for j in c_list:
xset.append([i for i in x if j in c])
yset.append([i for i in y if j in c])
要温柔 - 我只学习Python一周左右!
提前致谢
我希望这有帮助:
x = [1, 2, 3, 4, 5]
y = [5, 3, 1, 3, 2]
c = [1, 3, 2, 3, 1]
c_list = list(set(c))
xset = []
yset = []
for j in c_list:
xset.append([x[i] for i, v in enumerate(c) if v == j])
yset.append([y[i] for i, v in enumerate(c) if v == j])
print(xset)
print(yset)