如何在 Python 中自定义刻度线和柱线?

How to custom ticks and bars in Python?

我想查看某些事件的发生频率,我的事件何时发生,何时未发生。

我如何自定义图表,使 x 轴上的年份按顺序从 1970 年到 2020 年(1 年间隔),并在有数据的地方有条形,在没有数据的地方有空刻度。

list1=[2019, 2016, 2014, 2014, 2011, 2008, 2005, 2004, 2003, 1994, 1992, 1989, 1988, 1984, 1983, 1981, 1980, 1979, 1977, 1975, 1973, 1970]
a=pd.Series(data=list1);a

A=a.value_counts(sort=False).plot.bar(figsize=(15, 3), color='darkblue')

plt.title(' A Occurrence ')

谢谢。

试试这个:

import pandas as pd
import matplotlib.pyplot as plt

list1=[2019, 2016, 2014, 2014, 2011, 2008, 2005, 2004, 2003, 1994, 1992, 1989, 1988, 1984, 1983, 1981, 1980, 1979, 1977, 1975, 1973, 1970]
a = pd.Series(list1)
A = a.value_counts().to_frame()
A.columns = ['cnt']
idx = np.arange(min(list1), max(list1)+1)
A = A.reindex(index=idx.tolist(), fill_value=0)
A.sort_index(axis=0,inplace=True)
A.plot.bar(figsize=(15, 3), color='darkblue')

plt.title(' A Occurrence ')