Python plt.grid的问题
问题是,下图中的网格只能在矩阵内部的每个数组中看到一个非交错数目的“数字”。 任何解决这个问题的建议都将不胜感激。 代码如下:Python plt.grid的问题,python,matplotlib,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 a
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]]))
不会做你认为它会做的事。改用plt.grid(True)
此外,除了scatter
之外,对plt
方法的所有调用都应该在for循环之外。您只有一个标题,无需设置太多次。不符合您的想法。改用plt.grid(True)
此外,除了
scatter
之外,对plt
方法的所有调用都应该在for循环之外。您只有一个标题,无需多次设置。您的意思是:“在矩阵中的每个数组中都有一个不存在的数字。”??你能更好地描述一下问题是什么吗?并提供所需的输出?每个数组都有一个非屋檐大小的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],[2,4,7,10]])作为输入,则显示一个没有网格的绘图。如果你给函数gradesPlot(np.数组([12,4,7,4,-3],[7,9,10,12,-3],[2,4,7,10,-3]])作为输入,它会显示一个网格图。将此代码添加到问题中,它会更具可读性。你的意思是:“在每个数组中,在矩阵中,有一个不存在的“数”。?”??你能更好地描述一下问题是什么吗?并提供所需的输出?每个数组都有一个非屋檐大小的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],[2,4,7,10]])作为输入,则显示一个没有网格的绘图。如果你给函数gradesPlot(np.array([[12,4,7,4,-3],[7,9,10,12,-3],[2,4,7,10,-3]])作为输入,它会显示一个带有网格的绘图。将此代码添加到问题中,它会更具可读性。