Python Windrose图例括号格式和loc

Python Windrose图例括号格式和loc,python,python-2.7,matplotlib,Python,Python 2.7,Matplotlib,下面我用Windrose绘制了一个基于的Windrose。首先,图例覆盖了玫瑰的一部分,但当我尝试使用loc设置它的位置时,图例消失了 其次,图例结束括号是错误的,即[0.0:1.0[知道我如何将其修改为[0.0:1.0] 代码: 将原始的windrose.py从python文件夹复制到所需的工作目录。以其他方式命名副本,例如windrose_edit.py。编辑该文件并查找get_labels()函数。我这样编辑,但您可以根据自己的目的使用它 def get_labels():

下面我用Windrose绘制了一个基于的Windrose。首先,图例覆盖了玫瑰的一部分,但当我尝试使用
loc
设置它的位置时,图例消失了

其次,图例结束括号是错误的,即
[0.0:1.0[
知道我如何将其修改为
[0.0:1.0]

代码:


将原始的windrose.py从python文件夹复制到所需的工作目录。以其他方式命名副本,例如windrose_edit.py。编辑该文件并查找get_labels()函数。我这样编辑,但您可以根据自己的目的使用它

def get_labels():
        labels = np.copy(self._info['bins'])
        labels = ["%.1f : %0.1f" %(labels[i], labels[i+1]-0.1) \
                  for i in range(len(labels)-1)]
        return labels
您还可以在下面的几行中增加图例的字体大小

def set_legend(self):
    l = self.legend(borderaxespad=-0.10)
    plt.setp(l.get_texts(), fontsize=12)
例如,最后导入编辑过的文件 导入windrose_编辑为wind2

和它一起使用

winddir_ = yourdata
windspeed_ = yourdata

fig = plt.figure(figsize=(12, 8), dpi=100, facecolor='w', edgecolor='w')
rect = [0.1, 0.1, 0.8, 0.8]

ax = wind2.WindroseAxes(fig, rect, facecolor='w')

ax.contourf(winddir_, windspeed_, bins=6, normed=True, cmap=cm.RdYlBu_r)
ax.set_legend()

它并不漂亮,虽然它是一个相对快速和懒惰的解决方法

我认为括号格式是正常的。右括号只是表示区间中没有包含上限值,我以前从未见过,但这是有意义的,thanks@Tryph你知道从图例中去掉括号的方法吗?不幸的是,不知道。我从来没有用过matplotlib或windrose
winddir_ = yourdata
windspeed_ = yourdata

fig = plt.figure(figsize=(12, 8), dpi=100, facecolor='w', edgecolor='w')
rect = [0.1, 0.1, 0.8, 0.8]

ax = wind2.WindroseAxes(fig, rect, facecolor='w')

ax.contourf(winddir_, windspeed_, bins=6, normed=True, cmap=cm.RdYlBu_r)
ax.set_legend()