python - 在 matplotlib 中使用 3 个变量和条件进行绘图

标签 python pandas matplotlib

嗨,我有如下数据。

sample code

我需要动态编写代码来输入我的年份,并在月份和消息数量之间绘制图表。 2016 年在我的数据中只有 6 个月,并且不存在休息。

我尝试将年份设置为索引并尝试绘图。

dff[dff.index == 2015].plot(marker='*')

但是我做的情节并不是需要的。

最佳答案

使用boolean indexingquery用于过滤,然后 plot带有参数xy:

year = 2014

df[df['year'] == year].plot(x='month', y='Number of messages', marker='*')

或者:

df.query("year == @year").plot(x='month', y='Number of messages', marker='*')

另一种方法是绘制 Series 并按 Month 列进行索引:

df = df.set_index('month')
df.loc[df['year'] == year, 'Number of messages'].plot(marker='*')
<小时/>
df.set_index('month').query("year == @year")['Number of messages'].plot(marker='*')

关于python - 在 matplotlib 中使用 3 个变量和条件进行绘图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54157214/

相关文章:

python - 带有 cors 的 flask 的 zappa 自定义授权器

python - 从字符串 python 中删除撇号

Python Pandas - 总行的自定义计算

python - 展平多索引 Pandas 数据框,其中列名成为值

python - 如何标记图矩阵的行/列?

opencv 将图像转换为灰度,并使用 matplotlib 显示会出现奇怪的颜色

python - 插值由其角节点已知的 3D 表面并使用颜色图对其着色

python - Django - 在 Formset 中禁用对现有表单的编辑,但允许在新表单中进行编辑

python - 带有评论的空类与通过相同?

python - 将 DataFrame 过滤为具有 2 个以上 True 元素的行