Polar plot points appear on wrong position
17 ビュー (過去 30 日間)
古いコメントを表示
Hello,
I am plotting values in an array of three parameters (angle, radius, and third parameter which is colored) points with a radius range of [-1.5, 2.8]. When plotting via polarscatter without any axes constraints, they appear as follows. You can see that the datapoint chosen lies at the maximum radius and is correctly placed (2.788 close to the edge of the graph).
If instead of relying on the automatic limits, I run
rlim([-Inf 5])
I can still see the same behaviour:
However, when I try to verify that no points exist beyond 2.8, and run the following:
rlim([3 5])
then, points act strange. As you can see, a point with value R=1.224 and Theta=321 deg appears between 4.5 and 5 ticks on the 150 deg region.
This is what the code looks like:
figure
polaraxes; hold on;
polarscatter(angle_values,r_values,[],extra_values,'.');
% rlim([min max])
My conclusion is that I am not understanding how polar plots really works. This is of course the same if I use polarplot instead of polarscatter. I am going through the documentation to no success to spot my mistake.
Could you help me understand what is going on? Thank you!
0 件のコメント
回答 (1 件)
dpb
2020 年 8 月 15 日
編集済み: dpb
2020 年 8 月 16 日
Looks like a bug -- I took the example for polarscatter from the doc and set rlim([10 20])
The one point outside the lower bounds of the new radial limits was still shown...as moved the lower limit to the minimum r value of the smallest point, it looks ok to placing the point at the origin.
But, when the limit is greater than the data point radius value, the angle location is 180 out of phase and the point plotted at a radius was at the reflection of r-rlim(1) --> 6 - 7 = -1.
Looks like the implementation just subtracts the lower limit from the r array and plots the result. This works until the values turn negative.
Doesn't look like was tested very much... :(
5 件のコメント
dpb
2020 年 8 月 17 日
When it hits the official bug list, presuming TMW is willing to concede is a bug, then there is a tracking number...as this went in during non-office hours, all that's happened so far is the robo-reply that the report has been filed...
参考
カテゴリ
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!