Python - надписи по оси X не совпадают с отметками - PullRequest
0 голосов
/ 19 февраля 2019

Я успешно создал код для генерации нескольких диаграмм.Однако метки оси x немного смещены (влево) от меток оси x.

Фрейм данных

  stationId       date variable  value  prefix uom
0    site 1 2016-04-07       pH   6.90     NaN  pH
1    site 1 2016-07-11       pH   6.80     NaN  pH
2    site 1 2017-10-09       pH   6.80     NaN  pH
3    site 1 2017-10-09       pH   6.80     NaN  pH
4    site 1 2016-06-29       pH   6.79     NaN  pH

Полный фрейм данных здесь

В коде нет ничего, что я могу понять, почему это должно произойти.

    #plot
for line,group in linedf.groupby(['variable']):
    x = group['date']
    ax1 = group.plot(x='date', figsize=(8.2,4.5),linestyle='--',
                     linewidth=0.75,rot=0,marker='o',markersize=3)

    #set axis labels and chart title
    plt.title("chartTitle", fontsize=12)
    ax1.set_xlabel('Date', fontsize=10)
    ax1.set_ylabel('GWL (mAHD)',fontsize=10)

    #set text font
    rcParams['font.family'] = 'serif'
    rcParams['font.serif'] = ['Cambria']

    #set dates for x tick labels
    years = mdates.YearLocator()   # every year
    months = mdates.MonthLocator()  # every month
    yearsFmt = mdates.DateFormatter('%Y')


    lgd = plt.legend(bbox_to_anchor=(0.0 ,-0.13, 1.0, -0.03), 
                     loc=2,ncol = 6, mode="expand", borderaxespad=0.0,shadow=True)

    plt.show()

x-axis not lining up with ticks

1 Ответ

0 голосов
/ 19 февраля 2019

Не видя используемый вами фрейм данных (или, по крайней мере, его часть), я должен немного поразмышлять, но этого достаточно, чтобы просто отрегулировать выравнивание меток тиков вручную, используя

for tick in ax1.xaxis.get_major_ticks():
    tick.label1.set_horizontalalignment('center')

Без фрейма данных я не могу проверить, чтобы убедиться, что это работает в вашем случае, но из графика, о котором идет речь, кажется, что выравнивание меток x-tick установлено на 'right', а установка на 'center' выровняет ихкак пожелаешь

Извлечено из центрированных ярлыков в документации по matplotlib.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...