Я пытаюсь установить ширину линии для matplotlib в веб-приложении, которое генерирует графики, используя
matplotlib.rc('lines', linewidth=0.5)
Это прекрасно работает при работе с matplotlib в интерактивном режиме, но в моем веб-приложении это не дает никакого эффекта, и единственный способ получить правильную ширину линии - это предоставить аргумент для отдельных вызовов, т.е.
vals = map(itemgetter(1), sorted(series1.items(), reverse=True))
group1_rects = ax.barh(ind, vals, width, color='r', snap=True, linewidth=0.5)
vals = map(itemgetter(1), sorted(series2.items(), reverse=True))
group2_rects = ax.barh(ind+width, vals, width, color='b', linewidth=0.5)
Есть ли какая-нибудь хитрость, чтобы вызов matplotlib.rc работал в веб-приложениях?
Код, который я использую для рисования фигуры, выглядит следующим образом:
@contextmanager
def render_plot(w=8,h=8):
fig = Figure(figsize=(w,h))
canvas = FigureCanvas(fig)
response.content_type = 'image/png'
#Here is where I hope to put RC settings
matplotlib.rc('lines', linewidth=0.5)
yield fig
s = StringIO()
canvas.print_figure(s)
response.content = s.getvalue()