python - Python plotly express 带有累积总和的折线图
问题描述
本质上,我想绘制我的数据的折线图y ~ x | g
,即我想分别绘制 y 的累积和并按组着色,而不必将这些添加到数据中。为什么?因为我想绘制很多这样的列,并且我不想为每个列添加一个累积列。考虑以下示例。
import pandas as pd
df = pd.DataFrame({
"y" : [1,1,1,2,2,2],
"x" : [1,2,3,1,2,3],
"g" : ["a","a","a","b","b","b"]
})
import plotly.express as px
px.line(df, y="y", x="x", color="g")
我正在寻找一种方法来添加各种参数来告诉情节以按组绘制累积总和。有这样的功能或解决方法吗?
解决方案
- 简单的熊猫
join()
需要cumsum()
groupby()
- plotly express的数据框现在可以访问任何未求和的cumsum列或列
import pandas as pd
df = pd.DataFrame({
"y" : [1,1,1,2,2,2],
"x" : [1,2,3,1,2,3],
"g" : ["a","a","a","b","b","b"]
})
import plotly.express as px
px.line(df.join(df.groupby("g", as_index=False).cumsum(), rsuffix="_cumsum"), y="y_cumsum", x="x", color="g")
推荐阅读
- angular - 如何在 Typescript 中导出类实例
- c - 在C中读取文件行
- azure - 使用 PowerShell 更改 Azure VM 使用的操作系统磁盘
- shiny - 具有 renderText 功能的闪亮应用需要添加新行
- apache - Apache 用户编写的模块中未定义的引用
- c# - Nuget:“Google.Apis”已经为“Google.Apis.Core”定义了一个依赖项
- json - JQ JSON 创建
- java - 在 Activity onStop 上启动 IntentService
- powershell - 以原子方式运行 powershell 命令
- angularjs - 如何在 NativeScript 上使用 font-awesome 中的图标?