收藏本站 劰载中...网站公告 | 吾爱海洋论坛交流QQ群:835383472

数据可视化—地图可视化

[复制链接]
* [: v! `, X; u! `

今天给大家推送的是地图可视化的知识,如何用Python实现地图可视化,地图可视化常用于地理信息系统,本节选用python中的自带库matplotlib,实现地图可视化,一起学习吧!

8 {& x" ?2 \, f) k) ?! O) f

可视化直观理解就是转化为视觉所能感知。可视化的基本含义是将科学计算中产生的大量非直观的、抽象的或者不可见的数据,借助计算机图形学和图像处理等技术,以图形图像信息的形式,直观、形象地表达出来,并进行交互处理。地理信息可视化是运用图形学、计算机图形学和图像处理技术,将地学信息输入、处理、查询、分析以及预测的结果和数据以图形符号、图标、文字、表格、视频等可视化形式显示并进行交互的理论、方法和技术。

3 N: I6 x- u4 Q* _& G

在地理信息系统中,可视化则以地理信息科学、计算机科学、地图学、认知科学、信息传输学与地理信息系统为基础,并通过计算机技术、数字技术、多媒体技术动态,直观、形象地表现、解释、传输地理空间信息并揭示其规律,是关于信息表达和传输的理论、方法与技术的一门学科。

import numpy as np #导入库! w1 d5 J& d- m+ [4 U) N2 Q import pandas as pd. S' \: j3 L% X) p2 H3 c% U import matplotlib.pyplot as plt9 T, r- a8 q3 O! F" ~: }7 @6 W( L' b from mpl_toolkits.basemap import Basemap6 C% m! ^3 t* Z8 e+ ? %matplotlib inlinemap1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0)+ h7 N2 p4 N5 R/ s( a8 x map1.drawcoastlines()
map1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0)" C! P6 f W& U% A6 d/ g. c+ G map1.drawcoastlines() #绘制海岸线% F8 ]% c) h8 `! } d, v' g0 h map1.drawcountries() #绘制国家 , `: H+ ~/ ~3 S, t$ Z6 C
map1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0)7 D3 O& s# c# T. }' m map1.drawcoastlines() #绘制海岸线4 v- Y5 z: S$ E" d. X1 B map1.drawcountries() #绘制国家" i; R; g% b9 ^# f map1.fillcontinents(color=blue,alpha=0.5) #填充颜色) M3 _+ P8 R5 W6 Y& R
map1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0)9 m: h l* n; l' V" E1 p& G3 b map1.drawcoastlines() #绘制海岸线 2 ?0 O. h4 ]" o8 H( [ map1.drawcountries() #绘制国家- B) f* G* y: k: w; w map1.drawmapboundary() #绘制边界 $ N4 J! E. w q" M. c map1.fillcontinents(color=blue,alpha=0.5) #填充颜色( s* `- m/ P2 ^* u3 Z* K# q map1.drawmeridians(np.arange(0, 360, 30)) #绘制经线 + R+ d' A" i! E5 L map1.drawparallels(np.arange(-90, 90, 30)) #绘制纬线+ @- f4 i/ R/ B7 r8 ?& G! r
map1 = Basemap(projection=robin, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0)4 R% M+ ?/ Y5 n map1.drawcoastlines() #绘制海岸线 $ T% W- ?7 \" U map1.drawcountries() #绘制国家, g5 \; U+ p( ~0 l- j map1.drawmapboundary() #绘制边界5 L5 M/ Y3 w, U; t7 a) ?* {4 v0 { map1.fillcontinents(color=blue,alpha=0.5) #填充颜色 / @1 q5 V9 x# g' v' I% W map1.drawmeridians(np.arange(0, 360, 30)) #绘制经线 . c1 @3 ~1 R8 l1 C& N6 V map1.drawparallels(np.arange(-90, 90, 30)) #绘制纬线$ Z8 O/ z1 ^8 B+ \4 y; q+ k
map2=Basemap(projection=stere,lat_0=90,lon_0=-105,llcrnrlon=-118.67,llcrnrlat=23.41,urcrnrlon=-64.5,urcrnrlat=45.44,resolution=l,area_thresh=1000.0)3 }) B2 @ m+ P3 _ map2.drawcoastlines() #绘制海岸线2 r% F2 ^+ r- y& M map2.drawcountries() #绘制国家 M" [5 o4 D O* ]* Q" o map2.drawmapboundary() #绘制边界) G/ L& {) z& c1 o, _( Q; T map2.drawstates() #绘制州 4 ?1 f- y- f* L- A8 ?* ]+ h G# ?8 v map2.fillcontinents(color=blue,alpha=0.5) #填充颜色1 D+ t# i$ D B( v' v6 d- [ map2.drawmeridians(np.arange(0, 360, 30)) #绘制经线 * L2 H8 F' g# v& k2 @. L. \+ V map2.drawparallels(np.arange(-90, 90, 30))   #绘制纬线 ' `, o/ y# d) k4 Q& i
map2=Basemap(projection=stere,lat_0=90,lon_0=-105,llcrnrlon=-118.67,llcrnrlat=23.41,urcrnrlon=-64.5, urcrnrlat=45.44,resolution=l, area_thresh=1000.0) ; m; E' J% Q7 P$ k map2.drawcoastlines() #绘制海岸线! e: M: ^) b% K7 ]7 l2 f map2.drawcountries() #绘制国家5 a7 H* a! r0 ~# F& k map2.drawmapboundary() #绘制边界/ M7 z: D) @* x/ \ map2.drawstates() #绘制州% @: @' r' t+ n+ f R map2.drawmeridians(np.arange(0, 360, 30)) #绘制经线 # e) |1 z/ B# c p" ? map2.drawparallels(np.arange(-90, 90, 30)) #绘制纬线' L) W. N9 |6 [ lon = -74lat = 40.43x,y = map2(lon, lat) #映射坐标 0 @6 x+ H8 z4 e map2.plot(x, y, ro, markersize=8) #绘制散点图& X( J& f6 V; m
map2=Basemap(projection=stere,lat_0=90,lon_0=-105,llcrnrlon=-118.67,llcrnrlat=23.41,urcrnrlon=-64.5, urcrnrlat=45.44,resolution=l, area_thresh=1000.0) : m2 z4 e$ p# V+ l, w map2.drawcoastlines() #绘制海岸线1 H# i- W8 R+ |9 F3 E: @ map2.drawcountries() #绘制国家 " d' ?. w1 B' P3 F8 X7 [ map2.drawmapboundary() #绘制边界) t: @' ~/ z5 n( N+ U: B0 d map2.drawstates() #绘制州5 P+ w( o, Y/ y: | map2.drawmeridians(np.arange(0, 360, 30)) #绘制经线 - p. }9 `4 V4 W3 a& a/ i" i3 T& T map2.drawparallels(np.arange(-90, 90, 30)) #绘制纬线/ n, h/ p/ Q) V- N! w' G% L lon = -74lat = 40.43x,y = map2(lon, lat) #映射坐标 " ]2 r- v' ]& I/ g4 v* J- \ map2.plot(x, y, ro, markersize=8) #绘制散点图 6 O) R5 x# M! i8 { plt.text(x,y,New York) #文本注释. _! P% R3 j# `$ W
. [: G* B: T0 ]" z, a& U3 a

学习编程没有什么捷径可言,“书山有路勤为径,学海无涯苦作舟”。多学、多练、多总结。

; Q2 l$ y4 j! f' I5 m0 N L

本文来源于公众号:大话数据分析

* ~. G5 w( V- P7 m: F _" e9 ^

更多实用的数据分析知识,请关注后,一同学习!

: q" W9 I1 Y. ]& F# s- { 7 u. M5 j$ c# [+ m0 u) ^2 b" y ) E9 p5 I" U0 n( j+ C. K% h1 t' C$ P9 l 2 a' r& u l" G! J
回复

举报 使用道具

相关帖子

全部回帖
暂无回帖,快来参与回复吧
懒得打字?点击右侧快捷回复 【吾爱海洋论坛发文有奖】
您需要登录后才可以回帖 登录 | 立即注册
那些果儿
活跃在2026-3-29
快速回复 返回顶部 返回列表