Change colorbar axis values

40 visualizaciones (últimos 30 días)
Ban
Ban el 18 de Ag. de 2023
Comentada: ProblemSolver el 18 de Ag. de 2023
Hi,
I am trying to convert my contour plot axes from degree to radian. Please suggest how do I do it? Particularly how do I change colorbar axes label from (0, 360) to (0, 2*pi) format.

Respuesta aceptada

ProblemSolver
ProblemSolver el 18 de Ag. de 2023
xticks = [0 pi/2 pi 3*pi/2 2*pi];
xticklabels = {'0','π/2','π','3π/2','2π'};
set(gca,'XTick',xticks,'XTickLabel',xticklabels)
yticks = [0 pi/2 pi 3*pi/2 2*pi];
yticklabels = {'0','π/2','π','3π/2','2π'};
set(gca,'YTick',yticks,'YTickLabel',yticklabels)
c = colorbar;
c.Ticks = [0 pi/2 pi 3*pi/2 2*pi];
c.TickLabels = {'0','π/2','π','3π/2','2π'};
  2 comentarios
Ban
Ban el 18 de Ag. de 2023
Does not work.
ProblemSolver
ProblemSolver el 18 de Ag. de 2023
Because its not the whole code. I have given you just the places that you need understand and add in your current program.

Iniciar sesión para comentar.

Más respuestas (1)

Voss
Voss el 18 de Ag. de 2023
You need to scale the contour color data from (0,360) to (0,2*pi), i.e., convert from degrees to radians.
First, I make a contour of data in degrees spanning 0 to 360 (more or less):
% some random data
x = 1:10;
y = 1:20;
c = 360*rand(numel(y),numel(x));
figure
contour(x,y,c)
colorbar
clim([0 360]) % color-limits in degrees
Now, to make the colorbar in radians, simply convert the color data itself using deg2rad, and plot it as before:
c = deg2rad(c);
figure
contour(x,y,c)
colorbar;
clim([0 2*pi]) % color-limits in radians

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by