Как нормализовать данные, отображаемые в шейп-файле в геопандах, когда полигоны имеют разный размер

У меня есть шейп-файл, содержащий карту Милана, которая содержит квадратные многоугольники разного размера, я имею в виду маленькие, средние и большие квадраты, и у каждого квадрата есть идентификатор

{'init': 'epsg:32632'}
               minx          miny           maxx          maxy
0     504174.267327  5.003118e+06  508268.993890  5.008309e+06
1     508268.993890  5.003118e+06  510316.357171  5.005714e+06
2     511851.879632  5.005065e+06  512363.720452  5.005714e+06
3     511340.038812  5.005065e+06  511851.879632  5.005714e+06
4     510316.357171  5.004416e+06  511340.038812  5.005714e+06
5     510316.357171  5.005714e+06  512363.720452  5.008309e+06
6     508268.993890  5.005714e+06  510316.357171  5.008309e+06
7     508268.993890  5.008309e+06  510316.357171  5.010904e+06
8     510316.357171  5.008309e+06  512363.720452  5.010904e+06
9     510316.357171  5.010904e+06  512363.720452  5.013500e+06
10    508268.993890  5.010904e+06  510316.357171  5.013500e+06

Это границы квадратов, но вместо индексов 0,1,2 .. Мне нравится видеть квадратные идентификаторы, связанные с каждой строкой, а также у меня есть несколько файлов данных, подобных этой

3939_0_0    5.906552126050579   848.3214545643237
3939_0_1    5.82302081392767    1465.1476909159426
3939_0_2    11.465018361277856  742.8107082619533
3939_0_3_1  3.820090639450465   325.98139282061385
3939_0_3_3  5.1252845330079415  558.5800634528392
3939_1_0    4.5542081654193165  3750.9638149391335
3939_1_2_0  4.32896456387925    701.1305591522687
3939_1_2_1  4.525807078759208   914.4823701027614
3939_1_2_2_0    9.017755686881884   681.569104080947
3939_1_2_2_3_0  9.633342711012752   731.6789474565304
3939_1_2_3  7.107888904350883   1274.6849947508085

и я нанес эти данные на файл формы Милана, и я создал подобные тепловые карты, но, поскольку квадраты не имеют одинакового размера, данные должны быть нормализованы по каждой области многоугольника. Есть ли какие-либо предложения, как я могу нормализовать свои данные по каждой области многоугольника?

Вот часть кода, которую я использовал для создания моих тепловых карт,

import pandas as pd
import geopandas as gpd
from geopandas import GeoSeries, GeoDataFrame
mapDir = "/home/foroogh/PhD/milano-grid"
mapName = "intersection_Milano_W_GRIDIT_NEW.shp"
map_path = os.path.join(mapDir, mapName)
milano = gpd.read_file(map_path)
.
.
.
 df1 = pd.read_csv(file_,sep='\t',index_col=None, header=None, names=  ['squareid','nofcalls','callduration'])
 df1 = milano.set_index("id").join(df1.set_index('squareid'))
 fig = plt.figure()
 df1.plot(column = "callduration", cmap = "jet", figsize = (20,20))
 filename3 = str(file_.split("/")[-1])+'.png'
 plt.savefig(os.path.join(root_path2, os.path.basename(file_)))
 plt.savefig(os.path.join(root_path2,filename3))
 plt.close(' ')

0 ответов

Другие вопросы по тегам