为了解释我的代码的全部意义, 我有成千上万的点要规划.问题是,对于给定的x值,我有多个y值,所以我的图不代表一个函数.为了解决这个问题,我想 for each x点取最大y值.
test_list=[(257.4, -6.0), (654.3, -3.0),(257.4, -9.0),(754.3, -0.0),(354.3, -11.0),(257.4, -5.0),(454.3, -10.0)] # example of pairs of points to be plot
x, y = zip(*test_list)
d=[]
for h,j in test_list:
if int(h)>256:
d.append(j)
plt.plot(int(h),max(d),".")
print(max(d))
这段代码的问题是,它将x的所有点映射到一个y值,这是因为取列表d的最大值给我1点.我如何对每个h值取list的最大值d.例如,对于h=257,我有一个列表,它与h=258的列表不同,对于所有值h 256,依此类推