plotting a graph for cell
7 views (last 30 days)
Show older comments
johnson saldanha
on 10 Dec 2018
Commented: johnson saldanha
on 11 Dec 2018
i have a cell array. it has a 12 rows and 1 column. i want to plot the graph for each cell element in the same graph. each cell element should differ in appearance. like circles, triangles and so on.
2 Comments
Guillaume
on 10 Dec 2018
What's in each cell of the cell array (size and type)?
What does the graph refers to? Matlab has many graph plotting functions from simple line graphs to bar, chart, etc. graphs.
Accepted Answer
KSSV
on 10 Dec 2018
% make random data
C = cell(5,1) ;
for i =1:5
C{i} = rand(10,1) ;
end
% plot
str = {'.-r','*-k','d-g','^-y','O-b'} ;
figure
hold on
for i = 1:length(C)
plot(C{i},str{i}) ;
end
legend
But my suggestion woul dbe to go by color instead of markers.
% make random data
C = cell(5,1) ;
for i =1:5
C{i} = rand(10,1) ;
end
% plot
figure
hold on
for i = 1:length(C)
plot(C{i}) ;
end
legend
3 Comments
KSSV
on 10 Dec 2018
YOu should show your whole code.....and also you should mention what is the error.
More Answers (1)
Guillaume
on 10 Dec 2018
The simplest way to plot each vector:
figure;
hold on;
hlines = cellfun(@plot, yourcellarray);
This will plot each vector in a different colour (according to the colourorder property of the figure). Matlab does not have an automatic way to cycle between different markers but you can change them afterward:
markers = {'o', '+', '*', '.', 'x', 's', 'd', '^', 'v', '>', '<', 'p'}; %12 different markers
[hlines.Marker] = markers{:};
3 Comments
Guillaume
on 10 Dec 2018
The lines
markers = {'o', '+', '*', '.', 'x', 's', 'd', '^', 'v', '>', '<', 'p'}; %12 different markers
[hlines.Marker] = markers{:};
will definitively change the markers of the 12 lines to 12 different markers.
See Also
Categories
Find more on Line 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!