#python #openstreetmap #folium
#python #openstreetmap #folium
Вопрос:
Я использую folium для создания карты.
m = folium.Map(
location=[47.842167, -120.101655],
zoom_start=8,
tiles='Stamen Toner'
)
points = (47.842167, -120.101655), (46.835627, -118.26239)
folium.Rectangle(bounds=points, color='#ff7800', fill=True, fill_color='#ffff00', fill_opacity=0.2).add_to(m)
m
Я хотел бы сохранить только ту часть, которая находится в прямоугольнике..
Возможно ли это сделать с помощью python? Заранее благодарю вас.
Комментарии:
1. Как сохранить его как изображение?
2. да, @BobHaffner, но, если возможно, также в html. Но только часть в прямоугольнике.
Ответ №1:
Используя комбинацию отключения функций панорамирования и масштабирования, а также с помощью функции fit_bounds() folium, вы могли бы сделать что-то вроде этого. Я думаю, что это близко к вашей цели
Примечание: если вы не хотите «блокировать» экспортированный файл, вы можете опустить последние 3 параметра в Map() , т.е. zoom_control
scrollWheelZoom
и dragging
m = folium.Map(
location=[47.842167, -120.101655],
zoom_start=8,
tiles='Stamen Toner',
zoom_control=False,
scrollWheelZoom=False,
dragging=False
)
sw = [46.835627, -120.101655]
ne = [47.842167, -118.26239]
m.fit_bounds([sw, ne])
m.save('mymap.html')
Комментарии:
1. Спасибо @BobHaffner за ответ. Мне нужно было что-то подобное. Но, похоже, он плохо подходит для карты.
m=folium.Map(width=700,height=700,zoom_control=False,scrollWheelZoom=False,dragging=False) points = (46.835627, -120.101655), (47.842167, -118.26239) folium.Rectangle(bounds=points, color='#ff7800', fill=True, fill_color='#ffff00').add_to(m) sw = [46.835627, -120.101655] ne = [47.842167, -118.26239] m.fit_bounds([sw, ne]) m.save('mymap.html') m
Он по-прежнему добавляет некоторую область вокруг прямоугольника. Я отобразил прямоугольник на карте для лучшей визуализации.2. Да, я понимаю, что вы имеете в виду. Может быть, fit_bounds() создает некоторые дополнения? Не уверен в этом.