I am trying to format the labels on a DateRangeSlider such that they display %m/%Y (example: 01/2021) instead of %d %b %Y (example: 01 Jan 2021). I just don’t get how this works. I have tried to pass the Bokeh DataRangeSlider ‘format’ attribute:
import pandas as pd
import panel as pn
from bokeh.models.formatters import DatetimeTickFormatter
pn.extension()
date_range_slider1 = pn.widgets.DateRangeSlider(
name='Date Range Slider',
start=dt.datetime(2021, 1, 1), end=dt.datetime(2021, 12, 31),
value=(dt.datetime(2021, 5, 1), dt.datetime(2021, 9, 1)))
date_range_slider2 = pn.widgets.DateRangeSlider(
name='Date Range Slider',
start=dt.datetime(2021, 1, 1), end=dt.datetime(2021, 12, 31),
value=(dt.datetime(2021, 5, 1), dt.datetime(2021, 9, 1)),
format='%m/%Y')
date_range_slider3 = pn.widgets.DateRangeSlider(
name='Date Range Slider',
start=dt.datetime(2021, 1, 1), end=dt.datetime(2021, 12, 31),
value=(dt.datetime(2021, 5, 1), dt.datetime(2021, 9, 1)),
format=DatetimeTickFormatter(months=['%m/%Y'], years = ['%m/%Y']))
pn.Column(date_range_slider1, date_range_slider2, date_range_slider3)
But this does not produce the desired result. It displays the following warnings, so obviously this is not the right way of doing it:
WARNING:param.Date Range Slider: Setting non-parameter attribute format=%m/%Y using a mechanism intended only for parameters
WARNING:param.Date Range Slider: Setting non-parameter attribute format=DatetimeTickFormatter(id=‘11415’, …) using a mechanism intended only for parameters
I appreciate any help and advice to make this work.