Я создаю модуль, в котором я использую API-интерфейс обнаружения тензорного объекта. Что ж, я столкнулся с ситуацией, когда использовался оригинальный код тензорного потока:
import matplotlib; matplotlib.use('Agg')
, но pyplot
ранее использовалось в моем коде, поэтому бэкэнд был автоматически установлен на TkAgg
, как я могу догадаться из этого сообщения:
Backend TkAgg - это интерактивный бэкэнд. Включение интерактивного режима.
Из документации из matplotlib
о бэкэндах я не понял разницы между ними. Кажется, что Agg
- это общий механизм рендеринга, а TkAgg
- это бэкэнд (render + canvas)?
Я хочу отключить предупреждение (устраняя причину, а не подавляя ее), и мне было интересно, есть ли какая-либо разница в указании
matplotlib.use('Agg')
вместо
matplotlib.use('TkAgg')
Насколько я понимаю, первое кажется более общим, и я предполагаю, что рендер (Agg, GTK, Cairo и т. Д.) Выбирается автоматически? Это тот случай? Итак, в моей системе (Ubuntu 16.04) они эквивалентны? Предоставляет ли первая большую мобильность другим платформам, в то время как вторая, например, привязана к Tk?