我有一个名为amounts_month
的数据框这样的类型:
product accounting_month amount
0 A 201404 204748.0
1 A 201405 445064.0
2 B 201404 649326.0
3 B 201405 876738.0
4 C 201404 1046336.0
但是当我评估时
import seaborn as sns
import matplotlib.pyplot as plt
sns.tsplot(data=amounts_month,
time='accounting_month',
value='amount',
condition='product'
)
我得到一个空的情节。我的代码出了什么问题?
答案 0 :(得分:3)
您可以尝试为产品C
product accounting_month amount
A 201404 204748.0
A 201405 445064.0
B 201404 649326.0
B 201405 876738.0
C 201404 1046336.0
C 201405 1046336.0
然后尝试以下代码:
import seaborn as sns
import matplotlib as mpl
#change the `accounting_month` to datatime
amounts_month['accounting_month']= pd.to_datetime(amounts_month['accounting_month'], format="%Y%m")
fig, ax = plt.subplots()
sns.tsplot(data=amounts_month,
time='accounting_month',
value='amount',
unit='product', # add a unit
condition='product',
ax=ax)
def myFormatter(x, pos):
return pd.to_datetime(x)
# assign locator and formatter for the xaxis ticks.
ax.xaxis.set_major_formatter(mpl.ticker.FuncFormatter(myFormatter))
# put the labels at 45deg since they tend to be too long
fig.autofmt_xdate()
plt.show()
结果: