我有一个数据库,其中一个表(ca_licenses)是商业地址,另一个表是市议会区多边形的公共模式(ca_la_la_council)。
我运行此查询是为了将议会表中的地区号码放在企业地址表中:
UPDATE poursafe.ca_licenses dst
SET prem_council = div_city
FROM public.ca_la_la_council src
WHERE st_within(dst.geom,src.geom) AND dst.geom&&src.geom;
我的问题是我总是得不到任何结果。两个几何列都是几何类型,SRID是4326。
#create poursafe.ca_licenses table
CREATE TABLE ca_licenses (
id INTEGER,
license VARCHAR,
lat DOUBLE PRECISION,
lon DOUBLE PRECISION,
geom GEOMETRY,
prem_council VARCHAR
);
#create public.ca_la_la_council table
CREATE TABLE ca_la_la_council (
gid INTEGER,
div_city VARCHAR,
shape_leng NUMERIC,
shape_area NUMERIC,
geom GEOMETRY
);
示例ca_licenses数据:https://raw . githubusercontent . com/pour safe/data _ samples/master/ca _ licenses . CSV
样本ca_la_la_council数据:https://raw . githubusercontent . com/pour safe/data _ samples/master/ca _ la _ la _ Council . CSV
我需要用div_city填充ca_licenses表列prem_council。为此,我运行上面的查询,查找ca_licenses点位于哪个议会区内。
我为public.ca_la_la_district表创建了一个spatial_ref_sys表,但没有ca_licenses表的spatial_ref_sys表。这张桌子也需要一个吗?我相信两个几何柱的 SRID 都设置为 4326。
我在Centos 7设置上使用postgis 2.4.4和postgres 9.2。
第一
我想推荐你去查一下QGIS
在linux机器上使用wine效果很好
第二
将多边形文件加载到qgis后,代码没有任何问题,这是shapefile结构
然后我加载了点文件
问题是它们之间没有任何交集,原因可能是点的错误构造。
(粉红色的小点是ca_licenses.csv点)
根据我的经验,将多边形与点相交的最佳方法是使用ST_INTERSECT
select * from ca_licenses join ca_la_la_council on st_intersects(ca_licenses.geom,ca_la_la_council.geom)
问题内容: 我对mysql,多边形的Geometric数据类型有一个典型的问题。 我有经度和纬度数组形式的面数据,例如: 我有一个经度和纬度坐标的点(顶点),例如: 现在,我想查找此顶点(点)是否在多边形内。我如何在php中做到这一点? 问题答案: 这是我从另一种语言转换为PHP的功能: 附加: 有关更多功能,我建议您使用此处提供的polygon.php类。使用顶点创建类,并以测试点作为输入调用该
我有一个带有lat和lon的商店位置csv文件。我还有一个geojson文件,其中包含美国人口普查区的多边形特征。我想使用Python查看每个位置存在哪些多边形。 我使用Shapely Python库的包含()来循环通过存储位置的csv文件,获取lat和lon坐标,然后检查这些坐标是否存在于Geojson文件中的一个多边形中。 如果我先遍历每个位置/坐标,然后遍历每个多边形,使用contains(
我正在寻找一种方法来创建一组多边形(rechtangles),沿着一条线在多个多边形中创建一组多边形(rechtangles),并将其水平隔开,如图所示。 我尝试生成点并将其用作多边形的中点,但问题是,通过创建等间距的点光栅,除了180度之外,不可能以任何其他方向旋转。 例子 给出了一个多多边形形状的对象和由宽度和高度以及每个多边形之间的垂直和水平间距定义的多边形。多边形应仅放置在多多边形内,且不
我有一个形状优美的多边形,代表洛杉矶市的边界。我在geopandas GeoDataFrame中还有一组约100万lat长的点,所有这些点都位于多边形的最小边界框内。其中一些点位于多边形本身内,但其他点不在多边形内。我只想保留洛杉矶边界内的那些点,由于洛杉矶的不规则形状,在其最小边界框内只有大约1/3的点在多边形本身内。 使用Python,如果点和多边形具有相同的最小边界框,识别这些点中哪些点位于
返回顶点的输入数组,并且附有一些其他方法,如下面所描述 polygon.area() 返回此多边形的标定区域。如果顶点是逆时针顺序,面积为正,否则为负。 polygon.centroid() 返回一个表示此多边形的质心的两元素数组。 polygon.clip(subject) 对这个多边形剪切主题多边形。换句话说,返回一个多边形表示这个多边形和主题多边形的交集。假定剪切的多边形是逆时针方向以及凸多
我有一组约36000个多边形,它们代表国家的一个分区(~县)。我的python脚本接收很多点:pointId、经度、纬度。 对于每一个点,我想发回pointId,polygonId。对于每个点,循环到所有多边形并使用myPoint。在(myPolygon)中,效率非常低。 我认为shapely库提供了一种更好的方法来准备多边形,以便为一个点查找多边形成为一个树路径(国家、地区、子地区……) 以下是