How to store multiple y-data of arbitrary length for a given x and plot?

1 vue (au cours des 30 derniers jours)
Udvas.C
Udvas.C le 4 Déc 2019
Commenté : Udvas.C le 4 Déc 2019
I have a two column data where the each element of the second column have arbitrary length. e.g.
X=[1 2 3 4 5]'
Y= [[1 2 3] [1] [] [1 2 10 4] [1 5 2 0 3]]'
How to store this type of y-data in matlab and plot both X vs Y and Y vs X in a scatter plot? i.e. there should be three points on the graph for X=1, no point for X=0 and so on. Note: There can be no elements in some of the arrays of y.
Thanks

Réponse acceptée

Raj
Raj le 4 Déc 2019
Modifié(e) : Raj le 4 Déc 2019
X=[1 2 3 4 5]';
Y= {[1 2 3] [1] [] [1 2 10 4] [1 5 2 0 3]}';
for ii=1:numel(X)
scatter((repelem(X(ii),numel(cell2mat(Y(ii))))),cell2mat(Y(ii)))
hold on
end
  7 commentaires
Raj
Raj le 4 Déc 2019
Something like this:
Y=[1 2 3 4 5]';
X= {[1 2 3] [1] [] [1 2 10 4] [1 5 2 0 3]}';
for ii=1:numel(X)
scatter(cell2mat(X(ii)),repelem(Y(ii),numel(cell2mat(X(ii)))))
hold on
end
Udvas.C
Udvas.C le 4 Déc 2019
Yes, it worked. Thanks!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Scatter Plots dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by