Git Product home page Git Product logo

polarpcolor's Introduction

pcolor in polar coordinates

polarPcolor draws a pseudocolor plot in polar coordinates with a polar grid.

View pcolor in polar coordinates on File Exchange DOI

Summary

polarPcolor aims to represent a pseudocolour plot in polar coordinates, with a radial grid to allow clear visualization of the data. It is well suited for Plan Position Indicator (PPI) scan for radar or lidar for example [1]. A similar function is available in ref. [2], which propose a visualization in 3D.

References

[1] Cheynet, E., Jakobsen, J. B., Snæbjörnsson, J., Reuder, J., Kumer, V., & Svardal, B. (2017). Assessing the potential of a commercial pulsed lidar for wind characterisation at a bridge site. Journal of Wind Engineering and Industrial Aerodynamics, 161, 17-26. http://dx.doi.org/10.1016/j.jweia.2016.12.002

[2] http://www.mathworks.com/matlabcentral/fileexchange/13200-3d-polar-plot

polarpcolor's People

Contributors

echeynet avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

polarpcolor's Issues

Quantil usage ?

In line 167 of your polarPcolor.m (caxis([quantile(Z(:),0.01),quantile(Z(:),0.99)]))), why did you use the 1% and 99% quantiles instead of the min and max? Just for my understanding, this function sets the min and max of the color scale, doesn't it (as in which color corresponds to which value)? I would assume that the quantile will skew your data if you have a wide range of values and a lot of data, which is the case in radar applications.

Bug in plotting with 'typeRose' set to 'default'?

It appears to me that the optional argument 'typerose' may have a bug in it (or I may have misunderstood its intended use)..

As a quick example, using your example code:

R = linspace(3,10,100);
theta = linspace(0,180,360);
Z = linspace(0,10,360)'*linspace(0,10,100);
figure;
polarPcolor(R,theta,Z,'Ncircles',3, 'typeRose', 'meteo');

gives rise to the "default" orientation for your polarPcolor, with zero degrees up towards north, and theta going clockwise around the polar plot to the maximum value of Z directly at the south.. Which is all good, and as expected based on R, theta and Z.

However if one wants to change orientation to have zero deg theta at the east (similar to Matlab's own default value in polarplot), then with the following example code:

R = linspace(3,10,100);
theta = linspace(0,180,360);
Z = linspace(0,10,360)'*linspace(0,10,100);
figure;
polarPcolor(R,theta,Z,'Ncircles',3, 'typeRose', 'default');

we suddenly have shifted only the spokes, ticks etc. and revert orientation of them but the data itself is still plotted with the original orientation and from "north to south" (not "east to west" as the spokes/ticks etc imply).

See example plot:
polarPcolor_example_typeRose_default

As a side note, having "default" as an argument but not having this value be the actual "default" is perhaps making things more confusing than need be.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.