Changing bin edges on polar histogram

6 visualizaciones (últimos 30 días)
JVM
JVM el 17 de Abr. de 2018
Editada: Scott MacKenzie el 6 de Mayo de 2021
Hi, I am making a polar histogram showing wind directions. I would like each bin to represent each tick rather than representing the directions between to ticks as shown below. How do I change that, so e.g. the bin representing North takes value from [337.5 : 22.5]?
  1 comentario
Stephanie Reeves
Stephanie Reeves el 21 de Abr. de 2021
I realize this was posted two years ago, but did you find the answer? I have the same problem. Currenting Googling and have come up with nothing. :/ Thank you!

Iniciar sesión para comentar.

Respuestas (1)

Scott MacKenzie
Scott MacKenzie el 6 de Mayo de 2021
Editada: Scott MacKenzie el 6 de Mayo de 2021
I suggest you work with bin edges in addition to the number of bins. Below are two examples. On the right, the bins are wind directions, as in your example, with the bins centered in each compass point.
% test data
y = 2*pi * rand(1,100);
tiledlayout('flow');
nexttile;
n = 8; % number of bins
binTheta = 360 / n;
edges = (0:binTheta:360) + binTheta/2;
edges = deg2rad(edges);
polarhistogram(y, edges);
nexttile;
n = 16; % number of bins
labels = { 'E', 'ENE', 'NE', 'NNE', 'N', 'NNW' 'NW', 'WNW', 'W', ...
'WSW', 'SW', 'SSW', 'S', 'SSE', 'SE', 'SES'};
binTheta = 360 / n;
edges = (0:binTheta:360) + binTheta/2;
edges = deg2rad(edges);
polarhistogram(y, edges);
ax = gca;
ax.ThetaTick = 0:binTheta:360;
ax.ThetaTickLabels = labels;

Categorías

Más información sobre Polar Plots en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by