首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Hvplot多列滤波器

Hvplot多列滤波器
EN

Stack Overflow用户
提问于 2022-06-02 12:59:03
回答 1查看 190关注 0票数 0

我试着用hvplot设计一个带有过滤器的时间序列。我唯一的问题是,我希望在我的过滤器多列。这是我拥有的数据:

代码语言:javascript
复制
date           city     Prod1 Prod2 Prod3 Prod4
01/07/2012   Limoges      24    45    12     7
02/07/2012   Lyon         39    36    31     27
03/07/2012   Paris        57    48    48     32

我可以展示以下几点:

代码语言:javascript
复制
 df.hvplot(kind='line', x='date', y= 'Prod1', groupby='city')

然而,我最终想要的是在时间序列上向所有的三个城市展示,并且把所有的产品都放在一个过滤器中,这样我就可以看到它们对每种产品的行为。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-06-02 18:47:47

comment中使用matias的建议,您可以使用:

代码语言:javascript
复制
import pandas as pd 
import numpy as np 
import hvplot.pandas

dates = pd.date_range(start='1/1/2012', periods=120)
product_data = np.random.randint(low=10, high=100, size=(120, 3))
city_names = ['city 1', 'city 2', 'city 3'] * 40

df = pd.DataFrame({"date" : dates, "city" : city_names, "Prod1":product_data[:, 0], "Prod2":product_data[:, 1], "Prod3":product_data[:, 2]})
df = df.melt(id_vars=['date', 'city'], value_vars=[f'Prod{i}' for i in (1, 2, 3)], var_name='prod')

df.hvplot(x='date', by='city', groupby=['prod'])

这样就可以比较所有城市在日期之间的不同产品价值:

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

https://stackoverflow.com/questions/72476687

复制
相关文章

相似问题

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