How to make equally spaced symbols on a line plot
Mostrar comentarios más antiguos
I have a line plot (created from an array with many many points) and I want to use symbols rather than colours to indicate the different data. Does anyone know how to do this?
I know you can't simply add 'o' at the end because this gives error message 'The end operator must be used within an array index expression'
Cheers!
Respuestas (1)
Do you want something like this?
x = 1:100;
y = sin(x/10);
plot(x,y) % the whole line
hold on
plot(x(1:10:end),y(1:10:end),'bo') % markers every so often
4 comentarios
That indicates to me that vacuum1a is not a variable that you're trying to index into but is more likely a function that you're trying to call. I'm guessing specifying the symbol is not the cause of the error, but that you've cleared or overwritten the variable that your first call used. As a simpler example below, note that there is no variable named sin so MATLAB is trying to call the sin function. But you can't use end like that in a function call.
y = sin(end-1:end)
To check, run this command immediately before your plot call:
which -all vacuum1a
Em
el 24 de Jul. de 2023
Instead of this:
plot(s9a(end-1000:10:end,1)*10^-6, s9a(end-1000:10:end,3)*10^9,'Color',c(5,:), 'o')
Do this:
plot(s9a(end-1000:10:end,1)*10^-6, s9a(end-1000:10:end,3)*10^9,'o','Color',c(5,:))
Property/Value pairs, like 'Color',c(5,:), must come at the end of the list of arguments to plot.
Categorías
Más información sobre Annotations en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
