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

数据可视化—地图可视化

[复制链接]
# F/ W( l$ C9 m: W2 r

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

; P3 `4 W g& J& U2 H

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

& z- H8 a" D! P1 s

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

import numpy as np #导入库 . z4 @% h: }* k import pandas as pd * }' l& P4 V1 i2 o$ ^ K/ ` import matplotlib.pyplot as plt ! e$ ~* Z: _/ H* F% w: `, d1 w from mpl_toolkits.basemap import Basemap% L) o6 `( f4 c %matplotlib inlinemap1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0) : p# b; l$ v' t4 L map1.drawcoastlines()
map1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0)* f5 h) i" I$ C9 g map1.drawcoastlines() #绘制海岸线 ! l u% ^. t/ W: ?# p) X1 i map1.drawcountries() #绘制国家! ~, \ v$ ?9 s3 P
map1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0) 7 `" z5 R% [5 i6 k) k$ A* O6 @- [8 a map1.drawcoastlines() #绘制海岸线 8 \1 l! A! O- I& Q map1.drawcountries() #绘制国家 ) @5 |( |" Z2 l( c1 y$ q5 F; R map1.fillcontinents(color=blue,alpha=0.5) #填充颜色 + I1 Q* }+ H& r1 g1 C1 o% A, ?7 O: b4 Y
map1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0)4 i; W+ q: Z' w9 w+ z map1.drawcoastlines() #绘制海岸线 a* s8 \! Y3 B" D6 Z map1.drawcountries() #绘制国家. a* J! c! e/ _: |3 w map1.drawmapboundary() #绘制边界 + [* A+ R2 f8 }: o& i map1.fillcontinents(color=blue,alpha=0.5) #填充颜色 8 K' J8 [1 L* Z& l" { map1.drawmeridians(np.arange(0, 360, 30)) #绘制经线8 ~7 c4 D0 m: L' V7 ^. ^+ O map1.drawparallels(np.arange(-90, 90, 30)) #绘制纬线/ ]1 e: l, Y- Q# j3 R; A
map1 = Basemap(projection=robin, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0) " h O1 A( S. R T7 _; I3 s map1.drawcoastlines() #绘制海岸线 , o; V ^9 k: o( t j map1.drawcountries() #绘制国家& |* c/ ]# o4 T) m map1.drawmapboundary() #绘制边界, M' ?; J* A, K8 y4 t! n map1.fillcontinents(color=blue,alpha=0.5) #填充颜色- R2 `+ k6 u4 j) ~# ? map1.drawmeridians(np.arange(0, 360, 30)) #绘制经线; L* J9 ?* Q$ b4 q: m' S map1.drawparallels(np.arange(-90, 90, 30)) #绘制纬线+ E s, R; ?4 y: f) e
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)4 ^. N5 D* N: ^6 }9 g2 A# F map2.drawcoastlines() #绘制海岸线 8 Y+ Z7 v7 X4 a) \; t9 ^! j* | map2.drawcountries() #绘制国家 " P J* K) m6 e9 F6 w, C2 l) `9 L* _ map2.drawmapboundary() #绘制边界 2 p3 `4 b- R& B- L map2.drawstates() #绘制州% Z. c# T) P3 y4 g; T map2.fillcontinents(color=blue,alpha=0.5) #填充颜色 5 |9 a) F( s( k% Z6 r0 A& W3 Y map2.drawmeridians(np.arange(0, 360, 30)) #绘制经线" }9 `. Y9 v8 A* Z, Q map2.drawparallels(np.arange(-90, 90, 30))   #绘制纬线 9 T5 n3 e! f) u0 E7 S8 {3 t1 s5 C
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 l; N! x w, V* h map2.drawcoastlines() #绘制海岸线9 C2 ~/ q$ _# Q7 d$ C0 x/ j map2.drawcountries() #绘制国家 ( M1 S) z! [+ L+ W map2.drawmapboundary() #绘制边界2 a* a: [4 i# c) L" p. T map2.drawstates() #绘制州' c7 \ D3 n2 O) X4 A& m map2.drawmeridians(np.arange(0, 360, 30)) #绘制经线+ P, N& E$ G1 o- c- u5 Z% P& i9 Z map2.drawparallels(np.arange(-90, 90, 30)) #绘制纬线 # i1 M f8 e8 y1 {6 s lon = -74lat = 40.43x,y = map2(lon, lat) #映射坐标 . s/ C& f# t$ Y4 N map2.plot(x, y, ro, markersize=8) #绘制散点图: a5 o: R1 |/ P+ g9 e4 ^- j( `
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) ; @. v% F v. v1 J. r map2.drawcoastlines() #绘制海岸线6 N: _" @( M! O" t8 k+ _ map2.drawcountries() #绘制国家8 i0 I4 _% z+ M t# `, E map2.drawmapboundary() #绘制边界( q. k6 l: f8 Y8 z+ B) L. g map2.drawstates() #绘制州 , W# U( w1 V$ E, \ map2.drawmeridians(np.arange(0, 360, 30)) #绘制经线( b) U2 o& X; v7 i map2.drawparallels(np.arange(-90, 90, 30)) #绘制纬线 # o/ Q# f0 d% ]0 T- J) E lon = -74lat = 40.43x,y = map2(lon, lat) #映射坐标9 h8 Z: [9 r& k% `* ? map2.plot(x, y, ro, markersize=8) #绘制散点图 % s, `4 q6 ~% a& m" f2 ? plt.text(x,y,New York) #文本注释8 o5 s+ k: s/ ^; G" r! q
( g5 D/ E2 R6 K/ M' w, [/ C

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

7 W* R( H' s4 c6 b1 s4 u

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

& y `/ Y5 o3 R" p+ v

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

& e/ Z, g! s0 [. i! x# @ - g) e& T: z* h- H; F + Z9 \- G6 C0 f; ^4 W0 r$ B1 a$ T. \# J! U! _& o# O0 ]" t' p / R7 h. H; h( s5 w n
回复

举报 使用道具

相关帖子

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