How to plot different datasets in a scatterplot next to each other at discrete points on x-axis?
10 次查看(过去 30 天)
显示 更早的评论
Hello,
I have 3 datasets that were obtained at positions 1-10 and have values.
The positions in the table are Strings, i.e. '1', '2', and each dataset contains values for each position.
Now I want to plot the data from all three datasets for each position next to each other in the same (scatter?) plot.
This is what I roughly want it to look like, excuse the crude image. I think I found a picture of what I want it to look like before, but I can't find it anymore.
The dots at each point should be evenly spaced out in the x-axis and there should be enoughenough spacing between the individual points 1-10 in the x-axis.
How can I achieve this? I tried using the reguar scatterplot, but that puts the dots on a line which makes it hard to read:
I pick the datapoints I want to plot from each dataset through an array of strings:
plotPositionDataset1 = [string(1:10)];
plotPositionDataset2 = [string(1:10)];
plotPositionDataset3 = [string(1:10)];
To map the strings I want to plot with the ones in my table I used categorical:
scatterPlotdataX = categorical(Table_Data_1.Position,plotPositionDataset1);
scatterPlotdataY = Table_Data_1.values;
scatter(scatterPlotdataX,scatterPlotdataY,20,"red","o","LineWidth",0.7,"DisplayName","Test1");
Then I repeat the process for all three, which results in the second from figure above.
How can I create a plot that looks like the first figure above? I looked at swarm plots, but that isn't exactly what I want.
0 个评论
回答(1 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Scatter Plots 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!