how can I plot multiple y values for single x value?
150 views (last 30 days)
Show older comments
I have to plot multiple y values for single x value, but in the plot all the values related to x=x1 appears on the same column. The relative y values are related to the same day (x) but to subsequent times. I would like to plot y values related to the same x in different columns just labeling the first value of x. It is possible? Thank you The graph that i found is the following but i don't know how to solve the problem.
3 Comments
KALYAN ACHARJYA
on 2 Dec 2020
Edited: KALYAN ACHARJYA
on 2 Dec 2020
@Chaman can you more specific please? To plot the data, the lengths of x and y must be the same. If we consider the same x value for all the corresponding y data, the result will be a vertical line (parallel to the y-axis).
Chaman Srivastava
on 2 Dec 2020
@kalyan acharjya Yes indeed it will be a straight line. But my goal is to obtain a regression curve with confidence interval, something like what is shown in the curve attached.
Any leads for this? Thanks
Answers (1)
Setsuna Yuuki.
on 2 Dec 2020
you can try creating a vector of ones and multiplying this by your x values, for example:
y = rand(1,15);
xvalue = 3;
x = xvalue*ones(1,length(y));
scatter(x,y,'LineWidth',3);
3 Comments
Chaman Srivastava
on 2 Dec 2020
Hey Bastian,
Thank you the piece of code. I have tried something like this but plotting a regression using polyfit isn't working. Any leads on that?
Setsuna Yuuki.
on 2 Dec 2020
I tried it this way
clearvars;
x = linspace(0,30);
i = 0; j = 1;
comp = 1:3:length(x);
vectorx = zeros(1,length(x));
%Vector with three same x values
for n = 1:length(x)
vectorx(n) = i;
if(n == comp(j))
i = i+1;
j = j+1;
end
end
x = vectorx;
%Random data
y = 0.2+rand(1,length(vectorx));
p = polyfit(x,y,1);
f = polyval(p,x);
figure
plot(x,y,'o',x,f,'-','LineWidth',3)
legend('data','linear fit')
grid on;
See Also
Categories
Find more on Discrete Data Plots in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!