1

I've produced the following windrose bar plot, using:

thetas = ... # Thetas starts
props = ...
width = 2*np.pi/len(thetas) # Desired width of each bar in the bar plot
fig = plt.figure("pyplot_windrose_barplot",figsize=(10,10)) # Create a new figure
ax = plt.axes(polar="true") # Create a polar axis
b = plt.bar(thetas,props,width=width, align='center') # Windrose Bar Plot
ax.set_thetagrids(thetas*180./np.pi) # Show grid lines from 0 to 360 in increments of dtheta
ax.set_theta_zero_location("N") # Set 0 degrees to the top of the plot
ax.set_theta_direction(-1) # Switch to clockwise

enter image description here How can I transform it in 3D to look like seeing if from a tilted angle, like the compass shown below: enter image description here

Trenton McKinney
  • 56,955
  • 33
  • 144
  • 158
Hesham Eraqi
  • 2,444
  • 4
  • 23
  • 45
  • 1
    There is an [example for custom projections](https://matplotlib.org/examples/api/custom_projection_example.html). You would need to implement your own transformations. Possibly, the [transformations for the mplot3d axes](https://github.com/matplotlib/matplotlib/blob/master/lib/mpl_toolkits/mplot3d/proj3d.py) can be of help for that. A little bit of a problem might be the labels, which can afaik not be transformed. So alternatively you might consider transforming the final image in a graphics program. – ImportanceOfBeingErnest Jun 03 '17 at 00:02

0 Answers0