How to plot a polar plot from a matrix or excel file ?

7 ビュー (過去 30 日間)
Anshuman S
Anshuman S 2018 年 10 月 12 日
コメント済み: Walter Roberson 2018 年 10 月 12 日
I have a matrix A which contains values at different angles & radius. The index of this matrix represents ( angles,radius ) as (i,j) . Now how to plot these values on a polar plot ? I also want to make a contour plot for these values in polar co-ordinate .
Let the matrix be test file ( analytical.csv) attached with this document. It contains 5 columns and 4 rows , colums represent different radius = ( 0 , 0.25, 0.50 , 0.75 , 1 ) and rows represent different angles = ( 0 , pi/2 , pi , 3pi/2 ) respectively.
Thanks
  5 件のコメント
Anshuman S
Anshuman S 2018 年 10 月 12 日
take m = 4 and n = 5
Star Strider
Star Strider 2018 年 10 月 12 日

サインインしてコメントする。

回答 (2 件)

KSSV
KSSV 2018 年 10 月 12 日
[A,txt,raw] = xlsread('C:\Users\srinivas\Downloads\analytical.csv') ;
r = [ 0 , 0.25, 0.50 , 0.75 , 1] ;
th = [ 0 , pi/2 , pi , 3*pi/2 ] ;
[R,T] = meshgrid(r,th) ;
% Create polar data
% Convert to Cartesian
X = R.*cos(T);
Y = R.*sin(T);
h = polar(X,Y);
hold on;
contourf(X,Y,A);
% Hide the POLAR function data and leave annotations
set(h,'Visible','off')
% Turn off axes and set square aspect ratio
axis off
axis image
  5 件のコメント
Anshuman S
Anshuman S 2018 年 10 月 12 日
Walter , May you please help me with this !
Walter Roberson
Walter Roberson 2018 年 10 月 12 日
You have chosen to replace Mathwork's plot.m with your own. Because plot() is called in many places in MATLAB, you will need to upgrade your plot.m to handle all of those cases, which will take a lot of work.
What is it that you are extending plot() to be able to handle that it does not handle already ?
Because a partly-completed plot.m is likely to interfere with your use of MATLAB until you have completely finished your fully-compatible extension or replacement of plot(), we would recommend that you name your plot.m by some other name while you work through the development stages.
... We are not sure what any of this has to do with the task of drawing a contour plot of that matrix. Why not use the regular contour() call to do that instead of developing a complete replacement for plot() ?

サインインしてコメントする。


Image Analyst
Image Analyst 2018 年 10 月 12 日
Do not call your m-file plot.m. Call it myPlot.m or something like that. Obviously change the name inside the file too.
  1 件のコメント
Walter Roberson
Walter Roberson 2018 年 10 月 12 日
... and my https://www.mathworks.com/matlabcentral/answers/423580-how-to-plot-a-polar-plot-from-a-matrix-or-excel-file#comment_621408 describes why it is a problem to name your file plot.m if you are not deliberately replacing Mathwork's plot() function...

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeLine Plots についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by