我试图绘制一个pandas框架,但我不能显示小刻度上的标签
数据帧如下所示:
day_of_week hour count
0 0 150
0 1 673
...
1 0 734
1 1 35
...
其中,day_of_week
是一周中的一天(星期一、星期二等),hour
是一天中从0到23的小时数.
我想将这个数量绘制成时间序列,并将主要的刻度显示为午夜和第二天的变化,次要刻度每6小时显示一次.
我修改了一点的框架,并试图绘制它,这是代码:
days = {0: "Mon", 1: "Tue", 2: "Wed", 3: "Thu", 4: "Fri", 5: "Sat", 6: "Sun"}
df["dow"] = df["day_of_week"].apply(lambda x: days.get(x))
df["axis"] = (df["dow"] + " " + df["hour"].astype(str))
fig, ax = plt.subplots()
ax.plot(time_tweets["axis"], time_tweets["count"])
ax.grid(which="major", axis="x", linestyle="-", linewidth=2)
ax.xaxis.set_major_locator(MultipleLocator(24))
ax.xaxis.set_minor_locator(MultipleLocator(6))
plt.xticks(rotation=45, minor=True, ha="right")
plt.xticks(rotation=45, minor=False, ha="right")
这不会在次要刻度上绘制标签,其他一切都很好,主要刻度和标签、次要刻度和栅格只在主要刻度上绘制.
我试着添加plt.minorticks_on()
或plt.setp(ax.get_xticklabels(minor=True), visible=True)
,但在小勾号上没有标签.
你有什么建议吗?