How can I plot a 2D array using polar coordinates?
60 ビュー (過去 30 日間)
古いコメントを表示
Hi,
I have a 2D array, with each row representing polar angle 'theta' and each column representing 'value' at paticular radius.
When I use 'imagesc', I got this (x-axis is the radius axis, y-axis is the theta axis)
How can I plot this array in polar coordinates?
2 件のコメント
Image Analyst
2020 年 5 月 5 日
How many rows and columns, and what is the formula relating row number to angle, and column number to radius?
回答 (1 件)
darova
2020 年 5 月 5 日
Convert your data to cartesian system of coordinates
A = xlsread('data.xlsx');
%%
t = linspace(0,pi/2,size(A,1)); % create angle
r = (1:size(A,2))*0.01; % create radius
[T,R] = ndgrid(t,r); % 2d matrices
[X,Y] = pol2cart(T,R); % polar to cartesian
surf(X,Y,A,'edgecolor','none')
view(2)
2 件のコメント
Ava
2023 年 11 月 3 日
Hi @Jiong Yang, may I ask how you solved this? I am working on an plotting ozone levels over Antarctica with a 2D array and would like to "imagesc" the data but with the rows and columns representing angle and radius.
参考
カテゴリ
Help Center および File Exchange で Polar Plots についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!