How to plot like the inserted picture?
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hello guys,
I want to plot like the picture below in matlab:
Is it possible in Matlab?
In X-Axis is the Frequency.
Every row is a node and the colours are the values of the results.
2 commentaires
Daniel M
le 23 Oct 2019
Sure, you can use imagesc and then just play with the properties of the plot. In particular: YTick, YTickLabel, GridColor, GridAlpha, TickLength, YGrid, XMinorGrid, etc. etc. There are many to list. You can also manually add white lines if that's what you want.
Réponse acceptée
Daniel M
le 24 Oct 2019
Modifié(e) : Daniel M
le 24 Oct 2019
You need to first collect all your values for yticks and labels, then set them all at once. For example
nfiles = 10;
for a = 1:nfiles
ticks(a) = a; % or whatever the ytick is
labels{a} = sprintf('Label %d',a);
end
figure
imagesc(magic(nfiles))
ax = gca;
set(ax,'YTick',ticks,'YTickLabel',labels);
set(ax,'YDir','normal')
Here is how you would add white lines.
x = [0.5 10.5]; % or however big your xaxis is
linelocs = [ticks(1:end-1) + 0.5]';
hold on
plot(x,[linelocs, linelocs],'w-','LineWidth',2)
And you can find the properties for the x-axis tick (length, colour, etc.) in here
xax = get(ax,'XAxis');
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Log 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!