python - 风玫瑰图的自定义缩放

标签 python matplotlib polar-coordinates windrose rose-plot

我正在尝试比较 python 中的风玫瑰,但这很困难,因为我无法弄清楚如何在所有地 block 上制作相同的比例。其他人在这里问了同样的问题Custom percentage scale used by windrose.py但无人接听。

示例代码:

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 设置条的比例,但我需要更改 y 轴频率比例,以便它可以与具有不同数据的其他风向图进行比较。

ax.bar(wind_dir,wind_sd,normed=True,bins=bins_range) 

这个 set_ylim 似乎确实有效,但 yaxis 刻度没有改变

ax.set_ylim(0,50)

下面的 set_ticks 行没有做任何事情,我不知道为什么

ax.yaxis.set_ticks(np.arange(0,50,10))

ax.set_legend()
plt.show()

最佳答案

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()

enter image description here

关于python - 风玫瑰图的自定义缩放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50821406/

相关文章:

AzureML 中的 Python 无法在没有更改的情况下传递数据框

python - 如何从Python列表中删除空系列

python - 箱线图字典而不是列表?

python : fit a curve to a list of integers

r - 单独缩放 ggplot 极坐标图中的轴?

python - 有没有一种简单的方法可以通过 sympy 获取某个域中函数的所有不连续性?

python - 使用plotly离线时,plotlyexpress绘图会自动打开新选项卡

matplotlib - 如何在 plotly 上绘制带注释的热图?

python - Matplotlib 极坐标绘图 : displaying polar tickmarks in degrees, 十进制格式

matlab - 为什么不是球形图?如何在 Matlab 中绘制 3D 极坐标图?