Creating a "clock" plot, like polarplot.

Is it possible to create a polar-like plot or histogram where the theta values are in minutes between 0 and 60?
I can do it by converting the values to radians and setting the labels, but it would be less-error prone if the theta scale was settable (ThetaLim doesn't do this).
WT = [ 1 2 3 5 42 43 59.5 0.5];
theta = deg2rad( WT*6 );
edges = deg2rad(-5:10:355);
figure;
pax = polaraxes;
polarhistogram( theta, edges );
pax.ThetaDir = 'clockwise';
pax.ThetaZeroLocation = 'top';
pax.ThetaTick = [0 90 180 270 360];
pax.ThetaTickLabel = [0 15 30 45 60];
pax.RTick = [];

1 Comment

@dormant, The method you've come up with seems like a good approach.
I think the (accepted) answer does not understood or acknowledge what the expected output is.

Sign in to comment.

 Accepted Answer

WT = [ 1 2 3 5 42 43 59.5 0.5];
theta = deg2rad(WT*6);
edges = deg2rad(-0.5:1:60.5);
figure;
pax = polaraxes;
polarhistogram(theta, edges);
pax.ThetaDir = 'clockwise';
pax.ThetaZeroLocation = 'top';
pax.ThetaTick = [0 90 180 270 360];
pax.ThetaTickLabel = {'0' '15' '30' '45' '60'};
pax.RTick = [];
The code snippet provided is a good starting point and, with a few adjustments, it should be able to produce a reliable and accurate clock-like polar histogram plot.
------------------------------------------------------------------------------------------------------------------------------------------------
If you find the solution helpful and it resolves your issue, it would be greatly appreciated if you could accept the answer. Also, leaving an upvote and a comment are also wonderful ways to provide feedback.

1 Comment

Many thanks. I'll try and write it as a function for future use.
I will try and include an option to produce a polar stem plot instead of a polar histogram, because the latter is often over-emphatic.

Sign in to comment.

More Answers (0)

Categories

Products

Release

R2023b

Asked:

on 27 Dec 2023

Commented:

on 30 Dec 2023

Community Treasure Hunt

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

Start Hunting!