Scatter Color Scale for Looping Script
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Adi Purwandana
le 6 Oct 2023
Commenté : Dyuman Joshi
le 6 Oct 2023
Dear everyone,
I have some excel files. Each file containing some columns of parameter. I want to plot all of them in one graph with different color (let's say jet colormap).
Here is my code:
A = dir('*.xlsx');
numprof = length(A); %number of profile
couleur = jet(numprof);
hold on;
for nn = 1:numprof
filename = A(nn).name;
data = xlsread(filename); %
a = data(:,1);
b = data(:,2);
% Plot
scatter(lon(1),lat(1),'filled','color',couleur(nn,:)); % plot the first row value from each excel file
end
legend(compose("% d", 1:numprof),'Location','eastoutside');
This code produce this:
The scatter colors did not following jet colormap. Does anyone know the line I should add in this script?
best regards,
2 commentaires
Dyuman Joshi
le 6 Oct 2023
The behaviour/functionality of scatter() is different than plot().
To clarify, you are trying to plot the first pair of points from each file?
Réponse acceptée
Matthew Blomquist
le 6 Oct 2023
Modifié(e) : Matthew Blomquist
le 6 Oct 2023
One option would be to store those values into an array within the for loop, and then plot the arrays with a colormap of jet after going through the loop. Something like:
A = dir('*.xlsx');
numprof = length(A); %number of profile
figure() ;
hold on;
% Initialize
lon = zeros( numprof , 1 ) ;
lat = zeros( numprof , 1 ) ;
for nn = 1:numprof
filename = A(nn).name;
data = xlsread(filename); %
lon(nn,1) = data(1,1);
lat(nn,1) = data(1,2);
end
% For colorbar
c = 1 : numprof ;
% Plot
scatter(lon,lat,[],c,'filled');
colorbar
colormap jet
3 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Data Distribution 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!