繁体   English   中英

使用 Pandas DataFrame 在箱线图上绘制线

[英]plot line over boxplot using pandas DataFrame

我有一个 Pandas DataFrame,有 16 列对应年份(2000 到 2015)和 12 行每个月的值。

我正在尝试使用以下代码在同一图中绘制箱线图和具有 2015 年值的线以进行比较:

import pandas as pd
import matplotlib.pyplot as plt
df = pd.read_excel('hidro_ne.xlsx')
fig, ax = plt.subplots()
ax1 = df[2015].plot(ax=ax, linewidth=2, legend='2015',color='red')
df.T.plot.box(yticks=range(0, 100, 5), ax=ax1)
plt.show()

在 2015 列中,我有从 1 月到 9 月的数据,但我得到了从 yline 到 9 月的移位线图:

在此处输入图片说明

事实上,该行应该从“Jan”开始,直到“set”,而不是在“ago”结束:

>>> df[2015]
Jan    16.41
Fev    18.34
Mar    23.52
Abr    27.40
Mai    26.96
Jun    25.34
Jul    22.49
Ago    18.38
Set    13.87
Out      NaN
Nov      NaN
Dez      NaN

我在 Windows 8.1 上使用 Python 3.4.3、pandas 1.7.0 运行脚本。

我该如何解决?

非常感谢,pbreach。

它对我有用。

我做了:

import pandas as pd
import matplotlib.pyplot as plt

df = pd.read_excel('hidro_ne.xlsx')

fig, ax = plt.subplots()
ax.plot(list(range(1,13)), df[2015].values, 'r', linewidth=2)
ax.legend(['2015'])
df.T.plot.box(yticks=range(0, 105, 5), ax=ax)

在此处输入图片说明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM