Pygal показывает время по месяцам на x lables - PullRequest
0 голосов
/ 07 марта 2020

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

Я использую line.x_value_formatter=lambda dt: dt.strftime('%d %b %Y'), чтобы установить формат, когда я хочу изменить оно в line.x_value_formatter=lambda dt: dt.strftime(%b %Y') не показывает только месяц и год

Так каким образом я могу показывать только год и месяц на своих ярлыках?

Вот код:

import json
import pygal
import os
from datetime import datetime


date,month,week,weekday,close=[],[],[],[],[]
file='btc_close_2017.json'
with open(file,'r') as f:
    for dict in json.load(f):
        date.append(datetime.strptime(dict['date'],'%Y-%m-%d'))
        month.append(int(dict['month']))
        week.append(int(dict['week']))
        weekday.append(dict['weekday'])
        close.append(int(float(dict['close'])))


line=pygal.Line(show_minor_x_labels=False,
                x_labels_major_every=7,x_label_rotation=20)
line.x_value_formatter=lambda dt: dt.strftime('%d %b %Y')
line.x_title='Date'
line.y_title='Price'
line.x_labels=date
line.add('Stock',close)
line.render_to_file('stock.svg')
...