将errorbar添加到gscatter Matlab

将errorbar添加到gscatter Matlab,matlab,scatter,errorbar,Matlab,Scatter,Errorbar,我想为gscatter函数的每个x数据添加一个已知的错误条(垂直)。我用计算出的平均值绘制了分组散射图(以指定颜色)。我该怎么办 这是我当前的代码 Mydata = readable ('D:\Download\Book1.xlsv); y = Mydata.Y; x = Mydata.X; g = Mydata.Category size = 10 h = gcatter (x,y,g,'rkgb','X',size); 我不认为Matlab的散点图支持散点函数本身的误差条。我认为应该多做

我想为gscatter函数的每个x数据添加一个已知的错误条(垂直)。我用计算出的平均值绘制了分组散射图(以指定颜色)。我该怎么办

这是我当前的代码

Mydata = readable ('D:\Download\Book1.xlsv);
y = Mydata.Y;
x = Mydata.X;
g = Mydata.Category
size = 10

h = gcatter (x,y,g,'rkgb','X',size);

我不认为Matlab的散点图支持散点函数本身的误差条。我认为应该多做些手工工作。下面是一个包含2个类别的工作示例,通过循环简化了它(您可以将其应用于远远不止2个类别)

Y = [4,3,4,2,10,9,11]; % some invented Y data
X = [1,2,3,7,6,9,8]; % some invented X data
groups = [0, 1]; % 2 groups/categories
G = [0,0,0,1,1,1,1]; % categories of data
E = [0.1, 0.4, 0.2, 0.5, 0.9, 0.7, 1]; % errors
colors = {'r', 'k'};

figure, gscatter (X,Y,G,'rk','X',10);
hold on
for i = 1:length(groups)
    errorbar(X(G==groups(i)),Y(G==groups(i)),E(G==groups(i)),'LineStyle','None','Color',colors{i})
end