I HAVE PLOTTED AN ELLISE FROM A SET OF DATA FROM A CSV TABLE.
MY CHALLENGE IS I WANT TO CALCULATE ANGLE OF ROTATION, MAJOR AND MINOR AXIS AND ECCENTRICITY. hOW DO I DI THAT. i HAVE ATTACHED MY CODE
clear all;
clc;
fid = fopen ('No_Fault.csv');
readData = textscan(fid, '%f %f %f', 'HeaderLines', 1, 'Delimiter',',');
xData = readData{1, 1}(:,1);
x1Data = readData{1, 2}(:,1);
x2Data = readData{1, 3}(:,1);
f1 = figure(1);
cla; hold on; grid on;
% plot (xData, x1Data,'k-');
% plot (xData, x2Data,'r-');
plot (x1Data, x2Data,'r-');

4 件のコメント

Image Analyst
Image Analyst 2020 年 7 月 13 日
Don't you want to supply us with 'No_Fault.csv' so we can run your code???
Tafadzwa Masocha
Tafadzwa Masocha 2020 年 7 月 13 日
im failing to attach. let me keep trying
Rafael Hernandez-Walls
Rafael Hernandez-Walls 2020 年 7 月 14 日
Tafadzwa Masocha
Tafadzwa Masocha 2020 年 7 月 14 日
thanks

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

 採用された回答

Image Analyst
Image Analyst 2020 年 7 月 14 日

0 投票

Try this:
fid = fopen ('No_Fault.csv');
readData = textscan(fid, '%f %f %f', 'HeaderLines', 1, 'Delimiter',',');
xData = readData{1, 1}(:,1);
x1Data = readData{1, 2}(:,1);
x2Data = readData{1, 3}(:,1);
f1 = figure(1);
cla; hold on; grid on;
% plot (xData, x1Data,'k-');
% plot (xData, x2Data,'r-');
plot (x1Data, x2Data,'r-');
binaryImage = poly2mask(x1Data, x2Data, 10000, 10000);
props = regionprops(binaryImage, 'Orientation', 'MajorAxisLength', 'MinorAxisLength');
Orientation = props.Orientation % Degrees
MajorAxisLength = props.MajorAxisLength
MinorAxisLength = props.MinorAxisLength
You get:
Orientation =
-59.9061922702959
MajorAxisLength =
54.5758448527965
MinorAxisLength =
7.14123514397741

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeData Distribution Plots についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by