我有一个 Dataframe 分组的“年”,“农场”和“作物”,我用它来绘制一个箱形图显示“产量吨/公顷”的“作物”,其中每个数据点将是一个单独的“农场平均值”。
我想添加标记,以便突出显示特定农场数据在此图中的位置。最终,我计划通过按特定“农场”过滤数据集并将其添加到图中来实现此目的。但目前,我似乎无法手动完成此操作。我尝试了各种方法,包括:
plt.plot('Linseed', 7, marker='^', markersize=10, markerfacecolor='green')
它就是这样:
如果我传递位置索引值(例如1),它就可以工作,但这对我没有帮助,因为这需要是动态的,因为索引值将根据“农场”种植和不种植的作物而变化。
dataframe.index是一个多索引,所以我尝试为.plot()中的x参数传递一个元组:
plt.plot((2022, 'Farm A', 'Linseed'), 7, marker='^', markersize=10, markerfacecolor='green')
但我得到了一个错误
ValueError: x and y must have same first dimension, but have shapes (3,) and (1,)
如何将单个值添加到特定的x轴索引?
2条答案
按热度按时间rsl1atfo1#
你的第一个建议就快成功了
您需要传递与'Linseed'列对应的x坐标,而不是传递名称'Linseed'。我没有看到创建箱线图的代码,但可能坐标是1。
下面是一个重复的例子:
最好的方法是在绘制箱线图时指定箱线图的x坐标,然后在绘制单个三角形时重用它。希望这对你有帮助!
wtzytmuj2#
可以按如下方式使用
get_xticklabels()
;