неправильный шрифт метки времени python xlsxwriter - PullRequest
1 голос
/ 02 ноября 2019

Я пишу из метки времени sqlite DB в столбец;Я установил шрифт столбца, как и все текстовые столбцы. Это работает отлично. За исключением того, где у меня есть значения в столбце даты.

xlWriter=pd.ExcelWriter(xlPath,engine='xlsxwriter',datetime_format='D-MMM-YY')

Дает правильное форматирование для временной отметки, которую я хочу. Потому что мой формат даты (ниже, который вроде работает);Кажется, перезаписывается с форматом текста по умолчанию (Calibir 11) и числовой формат 2019-10-01 00:00:00;где есть значения из вывода метки времени;к остальной части столбца применен правильный «dateFormat».

dateFormat=xlWorkbook.add_format({ 'align': 'right', 'num_format': 'D-MMM-YY', 'font_name':'Arial', 'font_size':'10', 'left':1, 'right':1})


exStr='SELECT  [Date] as "Date [timestamp]",[hours],[travel],[km], [Details] FROM '+tbl

Все остальные мои столбцы получают правильные форматы, примененные ко всему столбцу, например

currencyFormat = xlWorkbook.add_format({ 'align': 'right', 'num_format': '$#,##0.00', 'font_name':'Arial', 'font_size':'10','right':1})
detailsFormat=xlWorkbook.add_format({'font_name':'Arial', 'font_size':'8','right':1})
stdFormat=xlWorkbook.add_format({'font_name':'Arial', 'font_size':'10','left':1,'right':1})

1 Ответ

0 голосов
/ 02 ноября 2019

В XlsxWriter (и Excel) формат ячейки переопределяет формат столбца. Pandas добавляет формат ячейки для каждой из ячеек даты и времени, которые она записывает в файл XlsxWriter, поэтому формат столбца не оказывает никакого влияния.

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

...