plt.grid的问题

时间:2017-01-17 09:42:39

标签: python matplotlib

问题在于,下图中的网格只能在矩阵内的每个数组内部看到非数量的“数字”。 任何解决这个问题的建议都非常感谢。 这是代码:

def gradesPlot(grades):
  for i in range(np.size(grades[0,:])):
    x = 1+i
    y=grades[:,i]
    interval = np.random.uniform(-0.1,0.1,np.size(grades[:,i]))

    plt.title('Grades per assignment')
    plt.ylabel('Grades')
    #plt.grid()
    plt.xticks([n for n in range(np.size(grades[0,:])+1)], ['Assignment%i' %n for n in range(np.size(grades[0,:])+1)],rotation=8)  
    plt.ylim([-3,12])
    plt.autoscale(tight=True)
    plt.scatter(x+interval, y+interval)

 gradesPlot(np.array([[12,4,7,4,-3],[7,9,10,12,-3],[2,4,7,10,-3]]))
 #gradesPlot(np.array([[12,4,7,4],[7,9,10,12]]))  
 #gradesPlot(np.array([[12,4,-3],[7,9,-3],[2,4,10]]))

1 个答案:

答案 0 :(得分:0)

plt.grid()没有按照您的想法行事。请改用plt.grid(True)

除了plt之外,对scatter方法的所有调用都应该不在for循环中。你只有一个标题,不需要多次设置。