how to mirror plots?

7 次查看(过去 30 天)
ramya
ramya 2024-8-7
i hv theta value as 60 and 61 each theta value has phi of 120 240 with corresponding total values.
i hv to mirror data that is phi values data from 120 to 180 should be mirrored to 180 to 240 and then its plot is plotted. aim is to get plots symmetry xaxis is phi y axis is total with respect to theta percentile plots.i hv tried with excel sheet but my data is in .tab file how to import that format file and plot from it
a=xlsread('1GHzHH.xlsx');
theta=a(:,1);
phi=a(:,2);
total=a(:,3);
figure
plot(phi,total)
% f=[1];
% pol=['HH''VV'];
%
% for i=1:size(pol)
% m=strcat(pol,'GHz')
% j=strcat(f,m) %i m trying to read file which i hv imported file name is 1GHzHH.tab
% theta=data(:,1);
% phi=data(:,2);
% total=data(:,3);
% for j=1:nume1(theta)
% for k=1:nume1(phi)
%
% end
% end
% end

回答(1 个)

Cris LaPierre
Cris LaPierre 2024-8-7
I'm not aware of a function for this, but it can be achieved with logical indexing and some math.
data1GHH=readtable('1GHzHH.xlsx')
data1GHH = 242x3 table
theta phi total _____ ___ _____ 60 120 -4 60 121 -3 60 122 -2 60 123 -1 60 124 0 60 125 1 60 126 2 60 127 3 60 128 4 60 129 5 60 130 6 60 131 7 60 132 8 60 133 9 60 134 10 60 135 11
ind = data1GHH.phi<=180;
data1GHH.phi(ind) = abs(data1GHH.phi(ind)-180)+180;
plot(data1GHH,"phi","total")
  5 个评论
ramya
ramya 2024-8-9
I hv to plot on a single plot x-axis will be phi and y axis total values..and all this I hv to plot with respect to theta.. Symmetry in this I meant as I m taking a very small example to explain A=1 2 3 4 5 6; B=0.2 0.5 0.6 0.7 0.8 After mirroring the data from middle b will be B= 0.2 0.5 0.6 0.5. 0.2 And then plot the results
So similiar I hv to do for phi and total values
Cris LaPierre
Cris LaPierre 2024-8-9
So the raw data looks like this
A=[1 2 3 4 5];
B=[0.2 0.5 0.6 0.7 0.8];
plot(B,A)
but should look like this
B= [0.2 0.5 0.6 0.5 0.2];
plot(B,A)
If I adapt the code I shared above for this example, it would look like this.
total=[1 2 3 4 5];
phi=[0.2 0.5 0.6 0.7 1]; % modifying your values so they are in fact symmetric
ind = phi>0.6;
phi(ind) = 0.6 - (phi(ind)-0.6)
phi = 1x5
0.2000 0.5000 0.6000 0.5000 0.2000
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
plot(phi,total)

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Graphics Object Identification 的更多信息

标签

产品


版本

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by