Сохранить график gmap, не включая плитки Google (карта) - PullRequest
0 голосов
/ 31 октября 2019

Экспорт графика gmap в png (из Bokeh SaveTool) не включает фрагменты карты. Просто серый фон с широтами и длинными осями и заголовком сюжета. Инструменты bokeh также отсутствуют.

Пробовали на Brave, Chrome и Safari также пытались добавить сохранение на стороне сервера, используя export_png, который работает, хотя и со странной высотой и шириной (даже когда они пропущены). Решение на стороне сервера невелико, поскольку оно не отражает масштабирование или панорамирование на стороне клиента, а только исходный график.

Я упростил график до простой карты без наложений, все еще без радости.

from bokeh.models import (GMapPlot, GMapOptions, BoxSelectTool, SaveTool, Plot)
from bokeh.io import output_notebook, show
from bokeh.plotting import figure, gmap

output_notebook()

map_options = GMapOptions(lat=-33.79822854506091, lng=151.2562823223427, map_type="roadmap", zoom=13)


plot = gmap("myGoogleKey", map_options, height_policy="max", width_policy="max")
plot.title.text = "Sample Plot"
plot.add_tools(BoxSelectTool(), SaveTool())
show(plot)

Ожидаемый вывод - это то, что показано на экране, фактический вывод (в файл) показывает оси и тикеры широты / ширины, но вся область карты отображается серым цветом.

Это после разрешениядостаточно времени для загрузки экрана (экран загружен)

В консоли браузера нет ошибок JavaScript.

Если я масштабирую (на стороне клиента) сетку, показанную в выходном png-файлеотражает мое местоположение и уровень масштабирования - то есть он знает, что я сделал, но все еще не имеет плитки карты.

1 Ответ

0 голосов
/ 31 октября 2019

Инструмент сохранения сохраняет только объект холста HTML. Ни панель инструментов, которая является отдельным объектом DOM вне холста, ни сама карта Google, которая является отдельным объектом DOM под (прозрачным) холстом, не включены в это. Это просто внутреннее ограничение SaveTool. Он не сможет сохранить плитки Google Map.

Вы можете попробовать другие варианты рендерера плиток, не принадлежащих Google, в Bokeh. Они отображают растровые плитки прямо на холст HTML. В противном случае единственными опциями является функция export_png.

...