我对下面代码的输出感到非常困惑。情节看起来像这样for i in range(0,300): test = random.random() if test < .10: plot_data.append(('filler','Octagon',random.random())) elif test >= .10 and test <= .40: plot_data.append(('filler','Rectangle',random.random())) elif test > .40 and test <= .70: plot_data.append(('filler','Circle',random.random())) elif test > .70 and test <= 1: plot_data.append(('filler','Hexagon',random.random()))fig = plt.figure()N=100ax = fig.add_subplot(1, 1, 1)x = [data_point[1] for data_point in plot_data]x_vals = ["Rectangle","Hexagon","Octagon","Circle"]y =[data_point[2] for data_point in plot_data]print(x)ax.scatter(x, y, color = rgb)plt.xticks(range(len(x_vals)),x_vals)plt.xlabel("Polygon")plt.ylabel("RGB Color Value")plt.show()代码中间的print语句显示了我假设在x轴上的值,这是这个['Hexagon', 'Rectangle', 'Circle', 'Hexagon', 'Rectangle', 'Circle', 'Hexagon', 'Rectangle', 'Circle', 'Rectangle', 'Circle', 'Rectangle', 'Circle', 'Octagon', 'Rectangle', 'Circle', 'Octagon', 'Rectangle', 'Circle', 'Hexagon', 'Rectangle', 'Circle', 'Hexagon', 'Rectangle', 'Circle', 'Hexagon', 'Rectangle', 'Circle', 'Rectangle', 'Circle', 'Rectangle', 'Circle', 'Octagon', 'Rectangle', 'Circle', 'Octagon', 'Rectangle', 'Circle', 'Hexagon', 'Rectangle', 'Circle', 'Hexagon', 'Rectangle', 'Circle', 'Hexagon', 'Rectangle', 'Circle', 'Rectangle', 'Circle', 'Rectangle', 'Circle', 'Octagon', 'Rectangle', 'Circle', 'Octagon', 'Rectangle', 'Circle', 'Hexagon', 'Rectangle', 'Circle', 我显示输出的原因仅仅是为了表明无论出于何种原因,Circle和Octagon似乎都混杂在一起。八角形标签应少于圆形标签。我不知道为什么该地块被贴错标签,并且在网上找不到任何相关信息。我需要x轴保持此形状顺序。有什么想法我做错了吗?供参考,plot_data是一个看起来像的元组(array_of_unimportance, string shape_classifier(i.e. "Rectangle"), float rgb_val range(0,1.0))
添加回答
举报
0/150
提交
取消