我正在尝试从图像中获取像素,并将其绘制在Blue Marble地图的顶部。我已经弄清楚了如何将它们投影到地图上。我只是无法弄清楚如何将每个像素投影到地图上时着色。
我一直在使用plot()方法,当我单独执行它们时,终端会自动终止我的进程,因为它必须绘制约65000次。我可以使用另一种方法吗?这些方法中的任何一种都可以使用像素颜色数组吗? PIL有可能吗?
rgb是具有3个元组的颜色数组,即。 (14,0,0)等。full_x和full_y是一个二维数组,其中是像素数x 5个不同的x,y点(以在蓝色大理石图像上形成像素形状)
这是我尝试制作颜色数组的地方:
for i in range(len(rgb)):
hexV = struct.pack('BBB',*rgb[i]).encode('hex')
hexA.append('#' + hexV)
m.plot(full_x, full_y, color=hexA)
我也尝试过:
for i in range(len(rgb)):
hexV = struct.pack('BBB',*rgb[i]).encode('hex')
#hexA.append('#' + hexV)
hexA = '#' + hexV
m.plot(full_x[i], full_y[i], color=hexA[i])
在这里,我尝试分别处理每个像素,然后该过程被自动终止。
任何帮助将非常感激。提前致谢。
最佳答案
对于任何看到此问题并有相同问题的人:
显然,您只需要使用散点图即可。为了映射具有多种颜色的像素/任何其他点,请使用x阵列,y阵列和像素颜色阵列的散点图。
关于python - Python:如何使用matplotlib将图像像素投影到 map 上,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11158932/