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

数据可视化—地图可视化

[复制链接]
& m% W5 s8 x( {

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

- s- T$ i! v, }4 m4 P- W& r

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

t: v7 i# c3 s7 m4 R: @

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

import numpy as np #导入库7 T( ~" d- B* b- J: } import pandas as pd " u6 X- @% Y8 Z. h2 K import matplotlib.pyplot as plt ( w5 k- w( N# p P. ]) d0 m from mpl_toolkits.basemap import Basemap ( b, p$ O. M/ ]& F' M %matplotlib inlinemap1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0) ( R8 T9 R, D$ E1 Z" a- t map1.drawcoastlines()
map1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0) ) `$ {6 {( L" J+ R& o, P, l map1.drawcoastlines() #绘制海岸线0 J" m9 q: h! f1 C map1.drawcountries() #绘制国家5 z; s9 N& K! A1 E/ S+ J$ v
map1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0) $ D7 K0 m, d+ n( ~# y3 U- e map1.drawcoastlines() #绘制海岸线 " @$ k; E" L, D( q map1.drawcountries() #绘制国家 & t/ t; c2 L. ^3 t X+ ? map1.fillcontinents(color=blue,alpha=0.5) #填充颜色 : Z h: G' h* b+ P
map1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0)& [7 w9 U+ V/ n3 m9 v, @6 b* h! U map1.drawcoastlines() #绘制海岸线 8 v0 _5 v- y, ~8 D' v$ m map1.drawcountries() #绘制国家 q9 |/ I3 D* L' x- j+ @5 Z- G map1.drawmapboundary() #绘制边界4 c* E( {' J* s* U& n. j map1.fillcontinents(color=blue,alpha=0.5) #填充颜色 8 V- e \/ T/ K5 } map1.drawmeridians(np.arange(0, 360, 30)) #绘制经线 4 E: m+ c' l: x. N' j( b map1.drawparallels(np.arange(-90, 90, 30)) #绘制纬线$ `9 M* J. B- _
map1 = Basemap(projection=robin, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0)6 X+ ~. k4 N- Y# `0 I5 ]+ a1 c map1.drawcoastlines() #绘制海岸线 7 z: R9 ?# a9 h+ f7 F3 C' Z map1.drawcountries() #绘制国家: r: w. F. z# t6 Y8 W map1.drawmapboundary() #绘制边界 % r# T3 G4 Q+ C" b( F" Q( V map1.fillcontinents(color=blue,alpha=0.5) #填充颜色( F9 L* X) b- U! U7 f( U- } map1.drawmeridians(np.arange(0, 360, 30)) #绘制经线2 z& F& c2 C4 B3 C/ Z map1.drawparallels(np.arange(-90, 90, 30)) #绘制纬线6 d" N9 h: N6 \! @- Z# t1 [( P
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)6 ^" m. i8 J: j9 g$ N8 q map2.drawcoastlines() #绘制海岸线. r* O1 r1 D7 F0 t N6 `, ^ map2.drawcountries() #绘制国家. K7 b% ]% h) o5 p. q map2.drawmapboundary() #绘制边界( h9 ]$ N, \) ^# Q map2.drawstates() #绘制州" G/ l8 C O+ r- T8 x map2.fillcontinents(color=blue,alpha=0.5) #填充颜色 , R3 {- j! ?) B+ m9 k4 v map2.drawmeridians(np.arange(0, 360, 30)) #绘制经线 * F3 g6 Z6 X" p+ ?6 E# k map2.drawparallels(np.arange(-90, 90, 30))   #绘制纬线 : ]1 g8 o) c% ]$ h) s
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) : {+ Z Q( ?) ` map2.drawcoastlines() #绘制海岸线' M3 ~8 G: j7 K. ~& R8 d8 V' U0 A map2.drawcountries() #绘制国家 ) G9 s; j) a! J map2.drawmapboundary() #绘制边界, D0 W C" z5 B, d/ f* k- \) s map2.drawstates() #绘制州 6 ^- s5 G0 H, H t map2.drawmeridians(np.arange(0, 360, 30)) #绘制经线 7 D1 a6 l0 J/ A5 ^ map2.drawparallels(np.arange(-90, 90, 30)) #绘制纬线' v0 U' i6 `' v8 `% D; O+ N lon = -74lat = 40.43x,y = map2(lon, lat) #映射坐标 " o. b; s8 C% I map2.plot(x, y, ro, markersize=8) #绘制散点图) ^% | F- l" _: A8 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): h5 b, L" ]( e& c9 U3 X map2.drawcoastlines() #绘制海岸线 0 h/ O( X# y3 H; Z% u map2.drawcountries() #绘制国家: ]" p |) T4 W n* V" e map2.drawmapboundary() #绘制边界 ( y0 e9 B$ b4 J. i* @9 Z map2.drawstates() #绘制州 5 M/ L( ]# D8 @1 U map2.drawmeridians(np.arange(0, 360, 30)) #绘制经线 - r$ c$ m5 Z/ ^) V4 p# B map2.drawparallels(np.arange(-90, 90, 30)) #绘制纬线 3 ]" l9 b7 x2 E lon = -74lat = 40.43x,y = map2(lon, lat) #映射坐标 + {8 {; p( q5 g. |2 _6 e map2.plot(x, y, ro, markersize=8) #绘制散点图 7 ?# m! i3 J; q, q/ S& I; {9 I plt.text(x,y,New York) #文本注释4 T, `, u/ ~" {# k
7 j/ n8 H: G& n4 m9 F

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

. `+ x, G( n6 Z, V

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

( r; n* q! V, g3 |$ p

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

/ U" R% `6 \5 [$ C2 j3 T2 z m! C 8 E6 i: `: T+ ?% i0 S; T5 A6 | 6 D% l6 K8 W5 ~ u7 R p7 v# \ : P3 h( _6 |' U2 B4 J$ z( l/ J
回复

举报 使用道具

相关帖子

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