我想使用以下数据集按小时(0-23)获取在线活动。
示例数据集名为activities
。数据集如下所示:
hour activity_counts
00 2
01 30
02 25
03 40
04 10
05 4
06 8
07 10
08 30
09 50
10 100
11 300
12 600
13 340
...
23 780
这是我的代码:
plt.plot(x=activities['hour'], y=activities['activity_counts'],fmt="H")
plt.title("Customer Online Activities by Hour")
plt.xlabel("Hours")
plt.ylabel("Hour Activity")
plt.grid(True)
plt.show()
这样的情节。情节中没有任何内容。
我的代码出了什么问题?
答案 0 :(得分:3)
问题在于x=
和y=
。名称为x
或y
的{{3}}没有任何争议(因此,您使用该名称传递的内容最终会在**kwargs
中被忽略),所以请尝试使用没有这些:
plt.plot(activities['hour'], activities['activity_counts'], "H") # only this line changed
plt.title("Customer Online Activities by Hour")
plt.xlabel("Hours")
plt.ylabel("Hour Activity")
plt.grid(True)
plt.show()
还有一些拼写错误:应使用'activity_counts'
代替'activities'
答案 1 :(得分:0)
您可以使用pandas.dataframe.plot
:
ax = activities.plot(x="hour",y="activity_counts",title="Customer Online Activities by Hour", marker="H")
ax.set_xlabel("Hours")
ax.set_ylabel("Hour Activity")
ax.grid(True)