【问题标题】:How can I plot a line graph from the data which miss some values in some dates?如何从在某些日期丢失某些值的数据中绘制折线图?
【发布时间】:2021-06-15 04:02:49
【问题描述】:

我不明白为什么我的情节没有向我展示我的预期。我的情节看起来杂乱无章,我不确定是不是因为表格错过了一些日期。我应该如何用代码修复它?

我的数据

date    count
0   2020-03-06  1
1   2020-03-17  2
2   2020-03-18  1
3   2020-03-21  1
4   2020-03-23  1
... ... ...
196 2020-12-27  25
197 2020-12-28  5
198 2020-12-29  19
199 2020-12-30  25
200 2020-12-31  23

我的代码

plt.plot(data['date'],data['count'])
plt.setp(plt.gca().xaxis.get_majorticklabels(),rotation=45)
plt.gca().xaxis.set_major_locator(mdates.DayLocator(interval=10))
plt.xlim('2020-03-06','2020-12-31')
plt.ylim((0,50))
plt.savefig('03_clean_tweet_count_by_month_2020.tiff', dpi=300, format='tiff', bbox_inches='tight')

结果

【问题讨论】:

    标签: python python-3.x matplotlib


    【解决方案1】:

    如果没有要测试的数据,我无法确定,但如果您的数据框的行没有正确排序,您可能会得到这样的输出。试试:

    data.sort_values('date', inplace=True)
    plt.plot(data['date'],data['count'])
    plt.setp(plt.gca().xaxis.get_majorticklabels(),rotation=45)
    plt.gca().xaxis.set_major_locator(mdates.DayLocator(interval=10))
    plt.xlim('2020-03-06','2020-12-31')
    plt.ylim((0,50))
    plt.savefig('03_clean_tweet_count_by_month_2020.tiff', dpi=300, format='tiff', bbox_inches='tight')
    

    【讨论】:

    • 我回去查看了我的数据。日期排序不正确。我发布了另一个问题以获取有关我的代码的反馈。我不确定是因为原始数据还是代码。
    【解决方案2】:

    在绘图之前先尝试按日期列对 DF 进行排序

    data=data.sort_values(by=['date'])
    plt.plot(data['date'],data['count'])
    

    【讨论】:

      猜你喜欢
      • 2016-12-26
      • 2016-05-05
      • 2013-06-28
      • 1970-01-01
      • 2023-03-26
      • 2018-11-10
      • 1970-01-01
      • 1970-01-01
      • 2021-06-20
      相关资源
      最近更新 更多