KeyError

KeyError: u’label2On’

报错背景

利用matplotlib画图时,莫名其妙的报了这个错。
Markdown

解决

在代码中打了断点,进去看字典对象,发现并没有u’label2On’这个字典项,导致找不到而报错。
Markdown

初略的扫了一眼axis.py中的定义流向,也没有发现其定义。

为了解决此问题,并快速投入项目下一问题中,并未在此深究。
使用的方法是将axis.py中tick_top中的代码改为如下:

1
2
3
#label = (self._major_tick_kw['label1On']
# or self._major_tick_kw['label2On'])
label = (self._major_tick_kw['label1On'])

将’label2On’部分注释掉。

问题解决。但这应该不是官方的解决方法,理论上来说应该是定义少了,在定义中加一个’label2On’可能更好。