微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Python plotnine - 添加一个矩形区域

如何解决Python plotnine - 添加一个矩形区域

我已经开始使用 plotnine 并想创建一个图表,其中红色区域高于 40,蓝色区域低于 -40。

chart with red and blue rectangles

我可以用下面的代码来近似它,但它看起来很笨拙。执行此操作的“正确”方法是什么?

import pandas as pd
from plotnine import *

vals = np.random.randint(-50,50,size=20)
df = pd.DataFrame({"val":vals})
ggplot(df,aes(x=df.index,y = 'val')) \
   + geom_line() \
   + geom_hline(yintercept=40,size=20,colour='red',alpha=0.5) \
   + geom_hline(yintercept=-40,colour='blue',alpha=0.5) 

解决方法

您可以使用 geom geom_rect() 添加带有 plotnine 的矩形区域。

+geom_rect(data = dfwithnumbersyoulike,aes(xmin = yourxmin,xmax = yourxmax,ymin = yourymin,ymax = yourymax,fill = #ff0000,alpha = 0.7)) #red
+geom_rect(data = dfwithnumbersyoulike2,aes(xmin = yourxmin2,xmax = yourxmax2,ymin = yourymin2,ymax = yourymax2,fill = #0000ff,alpha = 0.7)) #blue

(或者只是将 geom_hline 转换为高于 40 和低于 -40

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。