首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何将计算值添加到matplotlib图表图例中?

如何将计算值添加到matplotlib图表图例中?
EN

Stack Overflow用户
提问于 2022-01-19 05:19:55
回答 1查看 141关注 0票数 0

我有以下时间序列数据框架:

代码语言:javascript
运行
复制
             Date          ID     Value     Max      Min     Mean
------------------------------------------------------------------
0      2018-11-14 11:30     1        43       45      13       38  
1      2018-11-14 11:31     1        43       45      13       38  
2      2018-11-14 11:32     1        44       45      13       38  
3      2018-11-14 11:33     1        43       45      13       38  
    ... 
134    2018-11-14 12:22     2        44       55      24       39
135    2018-11-14 12:23     2        46       55      24       39
136    2018-11-14 12:24     2        49       55      24       39
137    2018-11-14 12:25     2        51       55      24       39 
    ... 
245    2019-11-14 14:11     3        44       46      35       40
246    2019-11-14 14:12     3        42       46      35       40
247    2019-11-14 14:13     3        39       46      35       40
248    2019-11-12 14:14     3        39       46      35       40
    ...
356    2019-11-14 15:19     4        37       44      32       42
357    2019-11-14 15:20     4        37       44      32       42
358    2019-11-14 15:21     4        36       44      32       42
359    2019-11-14 15:22     4        40       44      32       42
...

因此,这个数据框架包含时间序列数据,但是每个时间序列数据子集都归因于不同的"ID“。因此,ID1有一个时间序列曲线,ID2有一个单独的时间序列曲线,然后是ID3,等等。正如您所看到的,时间序列ID一个接一个地出现,这意味着第一个时间序列ID1发生,然后时间序列ID2发生,然后是ID3,它们从不重叠。然后,对于每个时间序列ID,我详细描述了整个特定曲线的最大值、最小值和平均值。因此,虽然每个时间戳都有一个唯一的“值”,但每个时间戳具有相同的最大值、最小值和定义整个特定曲线的均值。

我使用以下代码绘制此数据框架:

代码语言:javascript
运行
复制
df_grouped = df.drop(columns = ['Value'])
df2 = df_grouped.groupby(by='ID').plot(kind='line',y='Value', rot=90)

具体来说,这个循环遍历我的数据帧,并为每个时间序列ID创建一个单独的图,并绘制"Value“值。现在这个传说只写着“价值”。我想要做的是,在传说中,还打印了Min,Max,以及特定曲线的平均值。例如,假设对于这个dataframe,只有4个时间序列ID。因此,我会产生4个不同的情节,每一个都有一个特殊的曲线,对应的Min,Max,和每一个图的平均值。因此,第一幅图,应该是ID1的时间序列曲线,其中"Max: 45","Min: 13","Min: 38“和"Value”一起显示在图例中,然后下一个图将显示ID2的时间序列曲线,其中"Max: 55","Min: 24",“Min: 39”与"Value“一起显示在图例中。如何在python中做到这一点?我对如何实际获得数据帧值以显示在绘图图中感到困惑,因为它们实际上需要从数据框架中引用。

EN

回答 1

Stack Overflow用户

发布于 2022-01-19 05:31:16

字符串格式是将数字包含到字符串中的一种很好的方法。然后,您可以使用该字符串作为您的传奇标签。

有点像label='Max: {:d}'.format(max_value)。其中,{:d}表示在这里的字符串中放置一个整数,并从format的参数(在本例中为max_value )读取整数的值。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70765640

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档