matplotlib plot_dates当yaxis整数更改长度时中断行

时间:2018-09-18 10:23:19

标签: python matplotlib

所以我有一个data:number匹配列表。 我将每个列表的长度更改为32〜。 比我的情节还要好:

    list_of_datetimes = [s for (i, s) in enumerate(list_of_datetimes) if (i % (len(list_of_datetimes) >> 5)) == 0]
    y_axis = [s for (i, s) in enumerate(y_axis) if (i % (len(y_axis) >> 5)) == 0]

    dates = mdates.datestr2num(list_of_datetimes)
    plt.gca().xaxis.set_major_formatter(mdates.DateFormatter('%d/%m/%Y'))
    #plt.gca().xaxis.set_major_locator(mdates.DayLocator())
    plt.style.use('seaborn-whitegrid')
    plt.gcf().autofmt_xdate()
    plt.plot_date(dates, y_axis, linestyle='solid', marker='None')

我不明白为什么图表被打破: chart_breaks

1 个答案:

答案 0 :(得分:2)

这是因为您的y轴是按字母顺序排序,而不是从最小到最大。

将在y轴上绘制的内容类型更改为floatint,它应该可以工作:

y_axis = [float(s) for (i, s) in enumerate(y_axis) if (i % (len(y_axis) >> 5)) == 0]