如何解决绘制后修改matplotlib y值
我正在使用matplotlib绘制KDE。问题是我使用的是ax.imshow
,它只包含一个网格和一个范围。这意味着它将使用最大值范围内的最小值线性地将数据与网格隔开。
我需要翻转y轴(可行),但是然后我还需要通过函数而不是简单的因素任意缩放每个y点。例如,如果y值为5
,则需要将其映射到f(5)=13
,并将6
映射到f(6)=22
。关键是,这不是一个简单的标尺。
在绘制了这些y值之后,是否可以修改这些值,还是我不得不事先修改这些值?
解决方法
我找不到修改y值的方法,但是我找到了修改yaxis标签的方法。
通过使用以下函数用所需函数及其反比例缩放矢轴:
ax.set_yscale('function',**{'functions':[forward,inverse]})
然后通过所需功能缩放轴ytick值并将ytick 标签设置为缩放后的ticks,即可有效缩放y值:
ax.set_yticklabels(forward(ax.get_yticks()))
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。