Mining and representing similarities, distinctiveness, and features of map projections: An approach of approximate integral computation, hybrid sampling scheme, feature fusion, dimensionality reduction, and visualization
Creators: name: Yan, Jin
name: Zhang, Jun
name: Xu, TianSheng
name: Gao, Jing
name: Li, Ni
name: Gong, Guanghong
Publisher: name: figshare
Year: 2024
Subjects: classificationCode: 401301
subject: Cartography and digital mapping
classificationCode: 460306
subject: Image processing
classificationCode: 460807
subject: Information visualisation

description: <i>Source code:</i>stage1_formula.jl # Formula-based scheme in the first stagestage1_image.jl # Image-based scheme in the first stagestage2_distmat.jl # Calculating distance matrix in the second stagestage2_dim_reduction.py # Dimensionality reduction in the second stage<i>Folders:</i><b>latlon-image</b> # Samples of latitude and Longitude images for the image-based scheme<b>stage1_formula</b> # Samples of output JLD2 files for formula-based scheme in the first stage<b>stage1_image</b> # Samples of output JLD2 files for image-based scheme in the first stage<b>stage2_iter</b> # Examples of iteration results of dimensionality reduction in the second stage<i>Files:</i>distmat_Q_total_num_is_14.csv # Example of distance matrix $\mathbf{Q}$ as defined in Tobler (1986) for 14 map projectionsdistmat_D_total_num_is_14.csv # Example of distance matrix $\mathbf{D}$, an improved version of integration used in this study, for 14 map projectionsdistmat_D_total_num_is_345_with_distortion.csv # Distance matrix $\mathbf{D}$ for 345 map projections, with first two columns containing distortionsencode-author-2d.csv # CSV file containing the features of authors, dimensionally reduced to 2 dimensions encode-year-2d.csv # CSV file containing the features of years of invention, dimensionally reduced to 2 dimensions encode-class-2d.csv # CSV file containing the features of classifications, dimensionally reduced to 2 dimensions<br>sum_curvature_345.txt # Samples of multiple iteration output of dimensionality reduction<br><i>Stage 1: Formula-based scheme</i><b>PS C:\distance&gt; &amp; julia .\stage1_formula.jl</b>[512, 3145728]<br>arden~~~~~~<br>bertin1953~~~~~~<br>(-0.26020655450843494, -0.6852260581423438)<br>boggs~~~~~~<br>cabot=0.8~~~~~~<br>cabot=1.0~~~~~~<br>cabot=1.27~~~~~~<br>cabot=1.33~~~~~~<br>cabot=1.6~~~~~~<br>cabot=1.8~~~~~~<br>cabot=2.0~~~~~~<br>larr~~~~~~<br>mayr~~~~~~<br>merc~~~~~~<br>81.314381 seconds (505.70 M allocations: 20.491 GiB, 2.02% gc time, 4.70% compilation time: 4% of which was recompilation)<br><i>Stage 1: Image-based scheme</i><b>PS C:\distance&gt; &amp; julia.exe .\stage1_image.jl</b>[512, 3145728]<br>bertin~~~~~~<br>36.681385 seconds (15.93 M allocations: 10.360 GiB, 5.93% gc time, 43.31% compilation time: 4% of which was recompilation)<br>50.328785 seconds (161.25 k allocations: 6.517 GiB, 0.06% gc time, 0.22% compilation time)<br>boggs~~~~~~<br>16.404210 seconds (15.03 k allocations: 9.328 GiB, 11.74% gc time, 0.06% compilation time: 100% of which was recompilation)<br>56.283401 seconds (32 allocations: 6.743 GiB, 2.31% gc time)<br>193.230057 seconds (33.48 M allocations: 47.537 GiB, 4.21% gc time, 10.00% compilation time: 4% of which was recompilation)<br><i>Stage 2: Calculate distance matrix</i><b>PS C:\distance&gt; &amp; julia.exe .\stage2_distmat.jl</b>[512, 3145728]<br>[12, 2, 14]<br>./stage1_formula/arden v.s. ./stage1_formula/bertin1953~~~~~~<br>2.567788 seconds (2.79 M allocations: 268.264 MiB, 2.25% gc time, 91.38% compilation time: 5% of which was recompilation)<br>0.456522 seconds (184 allocations: 138.743 MiB, 1.90% gc time)<br>30.864253812236182<br>14.15301065958934<br>./stage1_formula/arden v.s. ./stage1_formula/cabot=0.8~~~~~~<br>0.247594 seconds (190 allocations: 106.273 MiB, 7.17% gc time)<br>0.259103 seconds (190 allocations: 119.400 MiB, 2.45% gc time)<br>9.410581736653155<br>9.758357467327096<br>./stage1_formula/arden v.s. ./stage1_formula/cabot=1.0~~~~~~<br>0.234897 seconds (190 allocations: 106.273 MiB)<br>0.232637 seconds (187 allocations: 100.120 MiB, 3.38% gc time)<br>5.173519093159532<br>7.240094823506276<br><b>[due to space limitation, some output not included here]</b>91.243785 seconds (3.26 M allocations: 59.761 GiB, 5.50% gc time, 3.10% compilation time: 4% of which was recompilation)<br><br><i>Stage 2: Dimensionality Reduction with Multiple Iteration</i><b>PS C:\distance&gt; python .\stage2_dim_reduction.py</b>(345, 347)<br>(345, 2)<br>(345, 345)<br>345<br>0.019013476013999116<br>write csv: 0<br>sum_curvature:<br>(7.033322640153627e-06, 4.655737100082261e-06)<br>0.019057246673338073<br>write csv: 1<br>sum_curvature:<br>(8.890190943605364e-05, 2.0663008552635734e-05)<br>0.019223798611896027<br>write csv: 2<br>sum_curvature:<br>(2.391630715929627e-05, 3.103471186919391e-05)<br>0.01913428972808122<br>write csv: 3<br>sum_curvature:<br>(4.3888212149800925e-05, 4.3034655904871935e-05)<br>0.01904508645863762<br>write csv: 4<br>sum_curvature:<br>(4.987817439061975e-06, 8.687803245443704e-06)<br>0.01910674306855642<br>write csv: 5<br>sum_curvature:<br>(2.249535280094346e-06, 3.0071970933697406e-06)<br>0.019072604225831406<br>write csv: 6<br>sum_curvature:<br>(3.758633883693081e-05, 7.464123127951563e-05)<br>0.019116629476532615<br>write csv: 7<br>sum_curvature:<br>(5.2675488013106576e-05, 6.0398845536055126e-05)<br>0.018954589398249694<br>write csv: 8<br>sum_curvature:<br>(1.1208029710981756e-05, 1.2468587484198228e-05)<br>0.018987487967490377<br>write csv: 9<br>sum_curvature:<br>(8.27036746247988e-05, 1.543358451435596e-05)<br>0.01920159083695674<br>write csv: 10<br>sum_curvature:<br>(7.191271507970979e-05, 4.864675845254058e-05)<br><b>[due to space limitation, some output not included here]</b>