how to do Polar plot?
25 views (last 30 days)
Show older comments
Hi all,
Thank you for the help in advance. I wanted to plot the data usin' polar plot as the exmple shows https://matplotlib.org/examples/api/radar_chart.html
the vectors are attached as: theta=TSP rho=DNA trajectories= the direction of the wind
any help would be truly appreciated.
0 Comments
Accepted Answer
Steven Lord
on 3 Apr 2018
If you want to create a polar plot, use the polarplot function introduced in release R2016a. It doesn't look exactly like the spider plot in the link Honglei posted, but it can look close, and it looks like some of the results in a Google Images search for "radar plot".
% Generate sample data
r = rand(1, 16);
th = linspace(0, 2*pi, length(r));
% Create the polar plot and get the handle to the axes
h = polarplot(th, r);
ax = ancestor(h, 'polaraxes');
% Use the axes handle to manipulate the ticks and tick labels
ax.ThetaTick = rad2deg(th);
ax.ThetaTickLabel = arrayfun(@(x) char(x+'A'), 0:15, 'UniformOutput', false);
I chose to use 'A' through 'O' as the tick labels because it was easy, but you could use a cell array containing your own names.
3 Comments
Steven Lord
on 4 Apr 2018
I'm not completely sure what you mean by "should follow the correct one". Do you want 0 to be at the top rather than on the right? Change the ThetaZeroLocation property of the polaraxes.
ax = polaraxes;
ax.ThetaZeroLocation = 'top';
For example, if you want a clock face, you can do so using four properties:
ax = polaraxes;
ax.ThetaZeroLocation = 'top';
ax.ThetaDir = 'clockwise';
ax.ThetaTickLabel = {'12'; '1'; '2'; '3'; '4'; '5'; ...
'6'; '7'; '8'; '9'; '10'; '11'};
ax.RTickLabel = {};
Technically you don't need to set ThetaZeroLocation and ThetaDir if you just reorder the ThetaTickLabel, but being able to start the clock labels with 12 (midnight) at the top of the clock face and have the clock labels occur in clockwise order just makes more sense to me.
More Answers (1)
See Also
Categories
Find more on Polar Plots in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!