Shade a wedge/portion of a compass or polar plot?

1 visualización (últimos 30 días)
Jared Saletin
Jared Saletin el 23 de En. de 2017
Comentada: Adam Danz el 30 de Jul. de 2020
Hi there!
I'm stumped on a question. I need to plot polar vectors from the origin on a polar axis. I can do this using either polarplot or compass without difficulty.
However I also need to shade a portion of the plot. So for instance, a complete wedge of the plot from 0 -> pi/2 shaded grey instead of background.
I tried to draw an arc, and use patch, but it didn't complete e full wedge.
Any ideas?
Jared

Respuestas (1)

John Chilleri
John Chilleri el 23 de En. de 2017
Editada: John Chilleri el 23 de En. de 2017
Hello,
I've found fill to be useful in this scenario, although it's slow, and I wouldn't recommend it if you plan to shade many many areas.
If you have the coordinates of the edges as vectors x and y (you'll start and finish at the origin I assume), then you can:
fill(x,y,C)
where C is your desired color.
I put this together real fast for the unit circle from 0 to pi/2:
x = [0 0:.01:1 0];
y = [0 sqrt(1-x(2:end-1).^2) 0];
fill(x,y,[.7 .7 .7])
axis([-1 1 -1 1])
It's colored gray and you can make it more or less detailed by changing the .01 value in the x vector.
Hope this helps!
  1 comentario
Adam Danz
Adam Danz el 30 de Jul. de 2020
fill() uses patch() which is not currently supported in polar axes.

Iniciar sesión para comentar.

Categorías

Más información sobre Polar Plots en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by