我對下面代碼的輸出感到非常困惑。情節看起來像這樣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
提交
取消