Проблема с форматирование строк в pdf таблице
У меня есть небольшая база данных в которую я собираю покупки. Я хотел бы их сохранять в pdf файле, но если встречаются длинные имена товаров, то код который я написал, работает не совсем так как нужно. Текст становится очень маленький.
Для создания таблицы я использую matplotlib
Код который у меня есть.
import matplotlib.pyplot as plt
data_2 = [['2021-06-01', 'шоколадка', 14.05],
['2021-06-03', 'вафли', 55.0],
['2021-06-06', 'Лук зеленый свежий', 25.46],
['2021-06-06', 'Помидоры', 30.65],
['2021-06-06', 'Хлеб Хлебодар', 33.11],
['2021-06-06', 'Хлебушек Домашний', 33.84], ]
fig = plt.figure(figsize=(6, 2))
ax = fig.add_subplot(111)
ax.axis('off')
ax.set_aspect(.1)
rows = list(range(1, 7))
cols = ["Дата", "Имя товара", "Цена"]
table = ax.table(cellText=data_2, colLabels=cols, rowLabels=rows, loc='upper center', cellLoc='center')
table.auto_set_font_size(True)
table.scale(1.5, 15.)
plt.savefig("test.pdf", bbox_inches='tight', facecolor='#a58de0')
Этот код дает результат, который я хочу
Данные, которые вызывают проблемы
data = [['2021-06-03', 'вафли', 55.0],
['2021-06-06', 'Лук зеленый свежий', 25.46],
['2021-06-06', 'Помидоры', 30.65],
['2021-06-06',
'Батончик злаковый Fitness с молочным шоколадом и карамелью обогащенный витаминами и минеральными веществами 5 г',
64.12],
['2021-06-06', 'Хлеб Хлебодар Ржаное чудо с клюквой 250 г', 33.11],
['2021-06-06', 'Хлебушек Домашний формовой пшенично-ржаной бездрожжевой 330 г', 33.84], ]
Что в итоге дает мне очень маленький текст
Ответы (1 шт):
Автор решения: Pak Uula
→ Ссылка
В интернетах пишут, что matplotlib не умеет переносить текст в ячейках таблиц. Поэтому рекомендуют либо вручную вставить разрыв строки \n в строку, либо использовать что-нибудь другое. Например, reportlab.com/opensource