import matplotlib.pyplot as plt
x = range(6)
y = [-3, -2, -1, 1, 2, 3]
xlabels = [f'label {i}' for i in x]
fig, ax = plt.subplots()
ax.bar(x, y)
# ha='***' is not enough to visually align labels with ticks
# use both ha='***' and rotation_mode='anchor'
ax.set_xticks(x, xlabels, rotation=45, ha='right', rotation_mode='anchor')
plt.show()