Iterative plotting with symbol change
9 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Hi,
I'm trying to do iterative plotting with each plot using a different symbol. The positions don't change, I just need to make the symbols change with each iteration. Any suggestions? Thanks
1 Kommentar
Ced
am 23 Okt. 2014
what do you mean by "the positions don't change, [...] make the symbols change"? So you have a plot, which does not change, but you want the colors/markers to change?
Generally speaking, you can either simply replot your data points using the new desired colors/markers, or you can use get/set to change any values/colors/markers etc. you like. The general formulation would be something like
handle = plot(x,y);
% then change whatever you like
set(handle,'option_name',value)
you can get a list of the available options by typing "get(handle)" (where handle is your actual plot handle).
Akzeptierte Antwort
Adam
am 23 Okt. 2014
You can change the marker type for a plot in a loop if that is what you mean, though there are only 14 pre-defined ones so far as I can see.
e.g.
figure; h = plot( 1:100, rand(100,1) ); hold on
availableMarkers = set( h, 'Marker' );
for i = 1:numel( availableMarkers )
hPlot = plot( 1:100, rand(100,1) );
hPlot.Marker = possibleMarkers{i};
end
That isn't the most efficient code, but it can be tidied up. I initially read your question as you wanting to change the marker on the same plot over and over so adapted the code I wrote for that to use for a new plot each time instead!
2 Kommentare
Ced
am 24 Okt. 2014
I don't think this is possible by defaults (apart from the standard letters x, o, etc.). However, I found this on Matlab Central http://www.mathworks.ch/matlabcentral/fileexchange/39487-custom-marker-plot
There are also several threads on "custom markers" if you google it.
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Line Plots finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!