我有一些scatter
情节的问题。Scatterplot matlab
我正在为学生绘制一个包含每个作业分数的矩阵,例如, [作业x成绩],但是如果不止一名学生在同一作业中获得相同成绩,则成绩将相互重叠。我想在每个点的x和y坐标上添加一个小的随机数(在-0.1和0.1之间)。
在x轴上,它应该是分配数量,在y轴上它应该是所有等级。
档次矩阵被定义为12×4矩阵
我的代码如下所示:
n_assignments = size(grades,2); % Total number of assignments.
n_students = size(grades,1); % Total number of student.
hold on; % Retain current plot when adding new plots.
for i = 1:n_assignments % Loop through every assignment.
% Scatter plot of assignment vs grades for that assignment.
% One assignment on every iteration.
scatter(i*ones(1, n_students), grades(i, :), 'jitter', 'on', 'jitterAmount', 0.1);
end
hold off; % Set the hold state to off.
set(gca, 'XTick', 1:n_assignments); % Display only integer values in x-axis.
xlabel('assignment'); % Label for x-axis.
ylabel('grades'); % Label for y-axis.
grid on; % Display grid lines.
但我不断收到错误消息:
X and Y must be vectors of the same length.
这正是我想要的,但是,当我尝试写出更多基因时,我无法让它正常工作,它不会绘制所有分数。 我对代码进行了如下更改: '将等级定义为12x4矩阵 n_assignments = size(等级,2); n_students =大小(等级,1); 坚持; (i,1,n_students),等级(i,:),'jitter','on','jitterAmount',0.1);对于i = 1:n_assignments scatter 结束 拖延; set(gca,'XTick',1:n_assignments);' 但它给了我错误消息:错误使用分散(第61行) X和Y必须是相同长度的向量。 – Ryan
@Ryan请你可以编辑你的问题,并在下面添加新的代码(不删除你已经写过的内容)。评论通常不是分享代码的理想场所。谢谢。 – codeaviator
我们得到它的工作,感谢您的帮助! – Ryan