Documentation

# ezpolar

Easy-to-use polar coordinate plotter

## Syntax

ezpolar(fun)
ezpolar(fun,[a,b])
ezpolar(axes_handle,...)
h = ezpolar(...)

## Description

ezpolar(fun) plots the polar curve rho = fun(theta) over the default domain 0 < theta < 2π.

fun can be a function handle, a character vector, or a string (see the Tips section).

ezpolar(fun,[a,b]) plots fun for a < theta < b.

ezpolar(axes_handle,...) plots into the axes with handle axes_handle instead of the current axes (gca).

h = ezpolar(...) returns the handle to a line object in h.

## Examples

collapse all

Plot the function $1+\mathrm{cos}\left(t\right)$ over the domain $\left[0,2\pi \right]$.

figure
ezpolar('1+cos(t)')

## Tips

### Passing the Function as a Character Vector or String

Array multiplication, division, and exponentiation are always implied in the expression you pass to ezpolar. For example, the MATLAB® syntax for a plot of the expression

t.^2.*cos(t)

which represents an implicitly defined function, is written as

ezpolar('t^2*cos(t)')

That is, t^2 is interpreted as t.^2 in the character vector or string you pass to ezpolar.

### Passing a Function Handle

Function handle arguments must point to functions that use MATLAB syntax. For example, the following statements define an anonymous function and pass the function handle fh to ezpolar.

fh = @(t) t.^2.*cos(t);
ezpolar(fh)

Note that when using function handles, you must use the array power, array multiplication, and array division operators (.^, .*, ./) since ezpolar does not alter the syntax, as in the case with character vector or string inputs.

If your function has additional parameters, for example k1 and k2 in myfun:

function s = myfun(t,k1,k2)
s = sin(k1*t).*cos(k2*t);

then you can use an anonymous function to specify the parameters:

ezpolar(@(t)myfun(t,2,3))