Issue
I am trying to compare wind roses in python, but it is difficult because I cannot figure out how to make the same scale across all of the plots. Someone else asked the same question here Custom percentage scale used by windrose.py but it was not answered .
Example code:
from windrose import WindroseAxes
import numpy as np
import matplotlib.pyplot as plt
wind_dir = np.array([30,45,90,43,180])
wind_sd = np.arange(1,wind_dir.shape[0]+1)
bins_range = np.arange(1,6,1) # this sets the legend scale
fig,ax = plt.subplots()
ax = WindroseAxes.from_ax()
bin_range below sets scale of bars, but I need to change the y-axis frequency scale so it can be compared to other wind roses with different data.
ax.bar(wind_dir,wind_sd,normed=True,bins=bins_range)
this set_ylim does seem to work, but the yaxis ticks do not change
ax.set_ylim(0,50)
this set_ticks line below does not do anything and I do not know why
ax.yaxis.set_ticks(np.arange(0,50,10))
ax.set_legend()
plt.show()
Solution
from windrose import WindroseAxes
import numpy as np
import matplotlib.pyplot as plt
wind_dir = np.array([30,45,90,43,180])
wind_sd = np.arange(1,wind_dir.shape[0]+1)
bins_range = np.arange(1,6,1) # this sets the legend scale
ax = WindroseAxes.from_ax()
ax.bar(wind_dir,wind_sd,normed=True,bins=bins_range)
ax.set_yticks(np.arange(10, 60, step=10))
ax.set_yticklabels(np.arange(10, 60, step=10))
plt.show()
Answered By - KRKirov
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.