plot major minor range as ticks
...
fig, ax = plt.subplots()
#set the ticks
major = 10 #an even number
major_range = [0] + list(range(major-1, count, major)) + [count-1]
minor_range = range(int(major/2) - 1, count, major)
ax.yaxis.set_major_locator(FixedLocator(major_range))
ax.yaxis.set_minor_locator(FixedLocator(minor_range))
ax.grid(which="major", axis = 'y', color = 'r', linewidth=3)
ax.grid(which="minor", axis = 'y', linestyle="--", color = 'r', linewidth=3)
#set y labels
ax.set_yticks(major_range)
ax.set_yticklabels(['Start'] + [i+1 for i in major_range[1:-1]] + ['End'])
#set x labels
x_labels = [str(i)[:10] for i in df['TimeStamp'].unique()]
x_values = range(len(x_labels))
ax.set_xticks(x_values)
ax.set_xticklabels(x_labels)
cmap = plt.get_cmap("Blues")
img = ax.imshow(
heatmap,
origin="lower",
aspect="auto",
cmap=cmap
)
cb = fig.colorbar(img)
fig.show()