在数据处理时需要建立多个矢量面,如果采用手绘的方式,必然会花费很多时间。所以我们还是写写代码,把建立矢量数据的工作留给电脑吧。
废话不多说,直接上代码
#---创建两个列表,用来保存坐标
coor1 = []
coor2 = []
#---全图样本坐标计算
for i in range(22):
for j in range(13):
coor1.append([367325.116+i*57, 3490778.945-j*57])
coor2.append([367325.116+57+i*57, 3490778.945-57-j*57])
#---创建列表,存储面对象
#QgsRectangle(QgsPointXY(),QgsPointXY()) 绘制矩形,通过QgsGeometry.fromRect()将矩形转为QgsGeometry
pys = [QgsGeometry.fromRect(QgsRectangle(QgsPointXY(coor1[i][0],coor1[i][1]), QgsPointXY(coor2[i][0],coor2[i][1]))) for i in range(286)]
#---显示样本
showgeoms(pys,'multipolygon')
本次实验需要建立286个样本,且需要样本间相互连接,如果采用手绘的方式,那不知道画到哪一天去了。
结果:
样本绘制成功!
注:代码中的函数showgeoms()是自己学习pyqgis后定义的函数,授人以鱼不如授人以渔。同时在此感谢up主Dr_HW!
pyqgis学习路径:https://space.bilibili.com/352884604?spm_id_from=333.788.b_765f7570696e666f.1
学习记录,希望对您有帮助!