- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试创建一个 numpy meshgrid 并将其转换为 Shapely 多边形。我可能可以用一种非常蛮力的方法来解决这个问题,但感觉必须有一个很好的技巧来完成这个,但我还没有想出它。
这让我得到了点网格(假设在 Jupyter 中运行)-
import numpy as np
from matplotlib import pyplot
fig = pyplot.figure(figsize=(10, 10))
ax = fig.add_subplot(111, aspect='equal')
x,y = np.mgrid[-5:-1:8j, 1:5:8j]
ax.plot(x,y, 'o', color='#000000')
pyplot.show()
现在需要将所有这些点水平和垂直连接起来以形成形状多边形。我的第一次尝试是生成一个 Shapely MultiLineString 来绘制垂直线和水平线,然后对其执行多边形化操作。这导致仅创建主要的外部多边形 - 这是由于 MultiLineString 仅包含外部多边形上的顶点。
我知道使用栅格和 GDAL 可能更合理,但我的情况要求最终结果是 Shapely 多边形。
感谢任何帮助寻找解决方案的人!
最佳答案
在构建 MultiLineString 之前,您基本上必须定义每一行。
import numpy as np
from shapely.geometry import MultiLineString
from shapely.ops import polygonize
x = np.linspace(-5, -1, 8)
y = np.linspace(1, 5, 8)
hlines = [((x1, yi), (x2, yi)) for x1, x2 in zip(x[:-1], x[1:]) for yi in y]
vlines = [((xi, y1), (xi, y2)) for y1, y2 in zip(y[:-1], y[1:]) for xi in x]
grids = list(polygonize(MultiLineString(hlines + vlines)))
关于python - numpy meshgrid 到形状多边形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37041377/
我有一个函数可以返回点 (x, y) 的密度估计。我想遍历给定二维网格的所有 (x, y) 点,并让密度函数计算每个点的估计值,以便我可以有一个密度值矩阵,然后我可以绘制它。 假设函数被调用 de
我将不一致的数据集更改为一致的数据集。现在我遇到了这个问题:我不明白如何从三个一维数据框列创建轮廓。 我如何将它们网格化以绘制等高线图?这三列是: data_month['Timestamp'], d
我有一个问题,我想绘制矩阵的行列式作为参数的函数,所以我有一个脚本 def f(x, y): DD = np.matrix([[0., 0.],[0., 0.]]) + 0.j ome
如何绘制下表中的数据表面。 第 1 列 - X;第 2 栏 - Y;第 3 列 - Z; 在下面的示例中,X 有 4 个不同点,Y 有 3 个不同点,但我无法预测,每次我都必须分析数据以确定如何将列
我正在尝试根据 x 和 y 点在 python 中网格的特定部分中的位置来标记它们。这些点存储在 Pandas 数据框中。 这里我有一个坐标散点图,在它们上方我正在绘制网格。整个网格更大,从左下点(5
在图像大小调整插值问题中,可以使用 np.meshgrid在对网格索引进行操作之前,在 row 和 col 索引上: nrows = 600 ncols = 800 image_in = np.ran
我正在努力解决与 Matplotlib 和 Numpy 相关的问题。 我正在尝试创建 山体阴影 在我的表面图上。 我的输入数据是 XYZ点的不规则间距源自激光雷达。 我可以生成 trisurf3D 图
我正在尝试创建一个 numpy meshgrid 并将其转换为 Shapely 多边形。我可能可以用一种非常蛮力的方法来解决这个问题,但感觉必须有一个很好的技巧来完成这个,但我还没有想出它。 这让我得
我在 numpy 中有一个网格。我对这些点做了一些计算。我想过滤掉由于某种原因无法计算的点(除以零)。 from numpy import arange, array Xout = arange(-4
我有两个单元格: Months1 = {'F','G','H','J','K','M','N','Q','U','V','X','Z'}; Months2 = 2009:2014; 如何在不运行循环的
我想过滤一个 numpy meshgrid 的值: X,Y = np.mgrid[-10:10,-10:10] 在这种情况下,我想删除 x**2 + y**2 = 2, np.meshgrid[-10
我有形状为 1750 X 1750 的纬度和经度点的 numpy 网格及其相同形状的相应数据(降雨量)。我需要找到落在多边形内的数据点的平均值,从形状文件中读取。 如果我的逻辑是正确的,我必须找出落在
有人可以解释一下 meshgrid 方法吗?我无法全神贯注。该示例来自 [SciPy][1] 站点: import numpy as np nx, ny = (3, 2) x = np.linspac
让我们考虑两个变量 f(x1, x2) 的函数,其中 x1 跨越向量 v1 和 x2 跨越向量 v2。 如果 f(x1, x2) = np.exp(x1 + x2),我们可以通过命令 numpy.me
我在 for 循环中使用 meshgrid 犯了一个错误。让我以下面的代码为例: x=linspace(0,100,100); y=linspace(0,100,100); x0=[0 1 2 3];
我正在开发一个开源代码,它应该有一个一维数组的网格文件。我在 Matlab 中通过 MESHGRID 创建网格,然后使用 FOR 循环按列堆叠数据以创建文件。由于FOR循环,需要很长时间。谁能为我建议
我正在尝试使用给出的示例 here生成我使用的函数的等高线图。我在使用 numpy.meshgrid 与此函数时遇到问题,因为它给出了 ValueError: 设置带有序列的数组元素。因此,我生成了一
我有一些数据 phi,我想用 pcolormesh 绘制它。我的第一个方法是: plt.figure() plt.colormesh(phi) plt.show() 产生: 好。现在我只想稍微调整一下
我的数据框: df1 = pd.DataFrame(np.array([[1, 2, 3], [4, 2, 3], [7, 8, 8]]),columns=['a', 'b', 'c']) df2 =
我想问一下如何从网格中生成相应的值。我有一个函数“foo”,它接受一个长度为 2 的一维数组,并返回一些实数。 import numpy as np def foo(X): #this fu
我是一名优秀的程序员,十分优秀!