Вопросы с тегом «shapely»

Shapely - это пакет Python с открытым исходным кодом для построения и анализа двухмерных плоских геометрических объектов, общих для географических информационных систем.


3
Проверьте, попадает ли точка в мультиполигон с помощью Python
Я попробовал несколько примеров кода с использованием библиотек, таких как shapefile, fiona и ogr, чтобы попытаться проверить, попадает ли точка (x, y) в границы мультиполигона, созданного с помощью ArcMap (и, следовательно, в формате shapefile). Однако ни один из примеров не работает хорошо с мультиполигонами, хотя они хорошо работают с обычными, …

5
Установка GEOS и Shapely в Windows
При попытке установить Shapely на мой 64-битный компьютер с Windows я не могу заставить работать библиотеку GEOS. До сих пор я запустил установщик OSGeo4W, из которого я установил GDAL (я считаю, что библиотека geos включена в этот пакет). После этого я проверил и у меня есть geos_c.dll в моем C:\OSGeo4W\binкаталоге, …
12 qgis  python  gdal  shapely 

3
Эффективное пересечение нескольких полигонов в Python
Я хотел бы получить пересечение нескольких полигонов. Используя shapelyпакет Python , я могу найти пересечение двух полигонов, используя intersectionфункцию. Существует ли подобная эффективная функция для получения пересечения нескольких многоугольников? Вот фрагмент кода, чтобы понять, что я имею в виду: from shapely.geometry import Point coord1 = ( 0,0 ) point1 = …

2
Создание Shapely MultiPolygons из шейп-файла MultiPolygons
Я читаю шейп-файл с помощью Fiona: with fiona.open('data/boroughs/boroughs_n.shp') as source: mpolys = [p for p in source] candidate = polys[0]['geometry'] это дает мне диктат, содержащий список списков координат, и типа «MultiPolygon». Однако я не уверен, как использовать данные координат для создания Shapely MultiPolygon, так как для этого требуется a sequence …
12 python  shapely  fiona 

4
используя shapely: перевод между полигонами и мультиполигонами
[РЕДАКТИРОВАТЬ: решение этой проблемы было просто использовать OGR для чтения шейп-файлов. Смотрите пример географии.] В шейп-файле ESRI нет различия между полигонами и мультиполигонами. Кроме того, нет явного различия между внутренними отверстиями и внешними кольцами (кроме «управляемости» данного многоугольника). Поэтому после прочтения шейп-файла у меня есть список последовательностей координат, описывающих кольца, …

1
Python: разрыв строки в зависимости от условия
У меня есть геопанда с фреймом данных из ряда строк, у которого есть некоторые данные, связанные с каждой вершиной / точкой: Point_x = (Lat, Lon, Time, ID, Data1, Data2, Data3) Точки преобразуются в линейные линии на основе идентификатора и упорядочены по времени. Я хочу разорвать линии подкладки в том месте, …

2
Чтение постгис геометрии с стройной
Я делаю мелкомасштабный рабочий процесс в блокноте ipython с геопандами и фигурными данными, извлекая кучу геопространственных данных, иногда из шейп-файлов, иногда из postgis (где выполняется более дорогая обработка). Теперь я перетаскиваю таблицы postgis в python с помощью sqlalchemyпреобразования геометрии в WKT, получая что-то вроде: sql = """ SELECT ST_AsText(ST_Transform(the_geom,4326)) as …

2
Как создать Shapely LineString из двух точек
Если есть две точки, из которых я хочу создать прямой LineStringобъект: from shapely.geometry import Point, LineString A = Point(0,0) B = Point(1,1) Руководство Shapely дляLineString государств: Последовательность Pointэкземпляров не является допустимым параметром конструктора. A LineStringописывается точками, но не состоит из экземпляров Point. Так что, если у меня есть две точки …
11 python  shapely 

1
Пересечение полигонов линии Геопанды
Я пытаюсь найти, где несколько линий пересекают многоугольник для двух разных геоданных: from shapely.geometry import Polygon, LineString import geopandas as gpd polygon = Polygon([(0, 0), (1, 0), (1, 1), (0, 1), (0, 0)]) line1 = LineString([(0.5, 0.5), (0.7, 0.7)]) line2 = LineString([(0.9, 0.9), (0.2, 0.6)]) poly_gdf = gpd.GeoDataFrame(geometry=[polygon]) line_gdf = …

2
Что такое единица измерения атрибута красивой формы?
Я делаю очень простой расчет длины полилинии, используя shapely: from shapely.geometry import LineString ... xy_list = [map(float,e) for e in xy_intm] line = LineString(xy_list) s = '%s,%s,%s' % (fr,to,line.length) Мои координаты в WGS84. Я не могу найти какую-либо информацию об атрибуте длины shapely. Какова единица измерения атрибута длины? Есть ли …
11 shapely  length  units 

5
Python, shapely library: возможно ли сделать аффинную операцию над многоугольником формы?
Я пытаюсь создать повернутый прямоугольник в координатах широта / долгота. В принципе, у меня есть координаты центра и угол поворота вокруг центра. Можно ли сделать с помощью, shapely или gdal, или что-то еще?

3
Полигоны на международной линии [-180 .. + 180 долготы]
Я пытаюсь создать полигоны для спутниковых орбитальных полос. Пока у меня есть метод для генерации двух линий, которые представляют край каждой полосы в [lat, long]. Некоторые полосы пересекли международную линию дат и так обернулись: Я смог решить это с ogr2ogr -wrapdateline: ogr2ogr -wrapdateline -f "ESRI Shapefile" test.shp orbits.shp Который разделяет …

3
«Жадные» линии отсечения с многоугольником
Я хочу обрезать набор полилиний (черные линии на изображении ниже) по внешней границе многоугольника. Любые пустоты внутри многоугольника должны игнорироваться. Мой идеальный выход - пунктирные желтые линии. Начальные линии могут быть или не быть прямыми. Изображение является упрощенным примером, в действительности многоугольник намного сложнее и содержит сотни линий. Я не …

1
Как разделить два пересекающихся многоугольника по средней строке линий общей области (QGIS / python shapely)
У меня есть два полигона, ПОЛИГОН ((- 5 -5, -5 5,5 5,5 -5, -5 -5)) ПОЛИГОН ((1 1, 1 7, 7 7, 7 1, 1 1)) и хочу разделить их равномерно. Результат должен быть разделен вдоль красной отмеченной линии. Я использую qgis / python, и хочу сделать это с помощью …
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.