How can I create a scatterplot and map the outputs to a logarithmic colorscale?
6 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
ryan eckman
il 29 Set 2021
Commentato: ryan eckman
il 5 Ott 2021
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/752459/image.jpeg)
I want to create a scatterplot like the picture included, where the color of the output is mapped to a color on a logarithmic scale. I initially tried using a for loop with conditional statements and using the built in colors ('r','g','b','y', etc), but I want to have a larger variation of colors that change in intensity based on the output value of the point. Is this possible in MATLAB?
0 Commenti
Risposta accettata
Kevin Holly
il 29 Set 2021
You can change the colorbar's scale to logarithmic with the following command:
set(gca,'ColorScale','log')
Here is it altogether with random values for y.
x = 1:1000;
y = 100000*rand(1,1000).*rand(1,1000).*rand(1,1000);
scatter(x,y,20,y,'filled')
ah=gca;
ah.YScale = 'log';
colorbar
set(gcf,'color','k')
set(gca,'color','k')
ah.XAxis.Color = 'w';
ah.YAxis.Color = 'w';
fh=gcf;
fh.Children(1).Color = 'w';
colormap(jet)
set(gca,'ColorScale','log')
2 Commenti
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Colormaps in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!