我在X和Y中有数千个数据。我正在尝试绘制插值图但是要开始绘制它需要从负值开始。
x = [15000,14000,13000,12000,11000,0,-1000,-10000,-15000]
y = [1,1,1,1,1,0,-1,-1,-1]
如何将其制作成这种格式
x = [-15000,-10000,-1000,0,11000,12000,13000,14000,15000]
y = [-1,-1,-1,0,1,1,1,1,1]
答案 0 :(得分:3)
试试这个:
x = x[::-1]
y = y[::-1]
我称之为“扭转”一个列表,而不是“交换”它,但你明白了。
答案 1 :(得分:1)
假设您确实需要排序 x
列表,并且以y
值被置换的相同方式移动x
值,请采取看看这个:
>>> x = [15000,14000,13000,12000,11000,0,-1000,-10000,-15000]
>>> y = [1,1,1,1,1,0,-1,-1,-1]
>>> x1, y1 = zip(*sorted(zip(x, y)))
>>> x1
(-15000, -10000, -1000, 0, 11000, 12000, 13000, 14000, 15000)
>>> y1
(-1, -1, -1, 0, 1, 1, 1, 1, 1)
所以x1
和y1
符合您的要求。但它们是元组而不是列表。如果您需要列表,那么,例如,
x1, y1 = map(list, zip(*sorted(zip(x, y))))
是一种方法。
Bwt如果您真正需要的只是简单地反转列表,那么@ OscarLopez的答案就容易多了: - )