我想在Python3中做一个绘图,它将向我展示x轴上的分配和y轴上的分级。 x轴必须显示从1到M的所有分配,并且y轴必须显示所有等级3到12.根据作业号码绘制坡度
输入是M个赋值的等级矩阵:例如, 6次分配,我有以下输入:
array([[10, -3, 10, ..., 7, 0, 12],
[12, 12, 12, ..., 10, 0, 12],
[7, 7, 10, ..., 10, 0, 10],
[7, 4, 7, ..., 7, 0, 12],
[-3, 4, 7, ..., 4, 4, 12],
[7, 4, 4, ..., 4, 0, 12]], dtype=object)
- 第一行 - 分配1个等级
- 第二行 - 分配2级
- 等
情节还必须包含:
- 每个给定的等级用圆点标记。我需要在每个点的x和y坐标上添加一个小的随机数 (在-0.1和0.1之间),以便能够分辨不同的点,否则这些点会在每个点的顶部一名学生在同一 作业中获得了相同的成绩。
- 每个作业的平均成绩绘制为一条线。
我已经开始尝试使用for循环来绘制每个任务,但它似乎不起作用 - 因此我现在被困住了。
import matplotlib.pyplot as plt
yaxis = np.arange(-3, 13)
for i in range(len(assignments)-1):
plt.plot(assignments[i, :], yaxis, label = "Assignemnt [i]")
plt.title("Grades per assignment")
plt.xlabel("Assignments")
plt.ylabel("Grades")
plt.show()
是的,这就是我一直在寻找。由于我是编程新手(python),你能解释一下'x'是什么吗? 另外,如果你能提示我如何在每个作业中为平均成绩添加一行,我们将不胜感激。 – Silverthorn
@Silverthorn我添加了更多信息来帮助您了解过程。 –