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

数据可视化—地图可视化

[复制链接]
* [7 r1 X' l7 P; X

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

( k! l/ s$ X# b( I1 e4 c: N

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

f6 b* \/ i2 z r8 T1 L

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

import numpy as np #导入库. W! s; \+ V' U4 p2 c import pandas as pd ; Z% t! @4 J% l1 M import matplotlib.pyplot as plt8 ]1 p0 h/ l2 P( D. G0 M* K- p% Y from mpl_toolkits.basemap import Basemap; c. b" w5 L4 B! c- R V %matplotlib inlinemap1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0)4 A; `4 F) J8 T) N+ ` map1.drawcoastlines()
map1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0)2 ~) n/ B& j# Z/ _- m' A! ` map1.drawcoastlines() #绘制海岸线6 `$ t. V/ d, h map1.drawcountries() #绘制国家 , k, `2 o( O+ y" I& _7 v' n. Z: ?/ j5 z
map1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0); V8 E" n1 K6 k+ | H9 c map1.drawcoastlines() #绘制海岸线4 R8 x. L" X& O1 \ map1.drawcountries() #绘制国家5 {* f$ C* x/ R map1.fillcontinents(color=blue,alpha=0.5) #填充颜色 S3 a* _7 y2 S: e+ f4 F- @( L
map1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0) " {" I p& Z6 v, w; E S map1.drawcoastlines() #绘制海岸线 c* N6 K, b$ _ map1.drawcountries() #绘制国家7 U6 F, z) Z" C: G6 P& Z map1.drawmapboundary() #绘制边界$ z7 d1 g& U. j map1.fillcontinents(color=blue,alpha=0.5) #填充颜色 0 s7 ^% V# R9 f5 T+ \# c map1.drawmeridians(np.arange(0, 360, 30)) #绘制经线3 @# n2 D/ p A map1.drawparallels(np.arange(-90, 90, 30)) #绘制纬线 / J" i* x9 ]6 D2 D, T8 M
map1 = Basemap(projection=robin, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0)" g& D8 g. W* a7 i map1.drawcoastlines() #绘制海岸线, M2 F: K" K+ ^# J% B( S. h" O. p: L map1.drawcountries() #绘制国家7 v$ X) i* U0 x+ B+ H map1.drawmapboundary() #绘制边界 5 ^% L3 J/ @9 r5 H& j8 H+ b9 Z$ z map1.fillcontinents(color=blue,alpha=0.5) #填充颜色 " ^+ m* ?+ k4 ?3 |, O" Y9 Y map1.drawmeridians(np.arange(0, 360, 30)) #绘制经线/ K. X9 D# g7 ?6 g y% f& [+ |" L) e map1.drawparallels(np.arange(-90, 90, 30)) #绘制纬线' |! ?- n6 \' ]. V+ W5 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) ! l( m+ \. i6 C s: G2 v map2.drawcoastlines() #绘制海岸线, |. d9 X, K! v map2.drawcountries() #绘制国家 * D/ T& t2 }: y& n" K6 q+ @ map2.drawmapboundary() #绘制边界 ; V- Z, Z; F, m/ M( h% V8 v map2.drawstates() #绘制州 . z" {7 R& B+ Y$ k( s6 |: ` map2.fillcontinents(color=blue,alpha=0.5) #填充颜色3 D& [( L) ]9 t' b7 l) G. D map2.drawmeridians(np.arange(0, 360, 30)) #绘制经线 ; N* H B/ `) Z% E0 O# k" r. U map2.drawparallels(np.arange(-90, 90, 30))   #绘制纬线/ Y6 D1 s0 E3 e& k# Z, \5 [: a
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)( [" b* x" t" A0 `' l map2.drawcoastlines() #绘制海岸线2 X# T O" s4 K: ]2 }5 x f' d map2.drawcountries() #绘制国家 3 z" g2 W4 S; q- v M: k map2.drawmapboundary() #绘制边界 0 [2 f% P8 j3 W& I! j9 o1 K7 G; u map2.drawstates() #绘制州 , |/ U6 O3 G5 A: Y; _3 j+ R map2.drawmeridians(np.arange(0, 360, 30)) #绘制经线 o4 `. B: p/ Y B6 m2 H' K map2.drawparallels(np.arange(-90, 90, 30)) #绘制纬线) J$ c& p" v( \+ J P4 z. h lon = -74lat = 40.43x,y = map2(lon, lat) #映射坐标 ) x3 U1 c4 w% j) F# W' p, y map2.plot(x, y, ro, markersize=8) #绘制散点图, S4 Q9 w" Q# ~5 C) V3 B# E( O
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) 5 H9 `9 @9 s7 R5 z3 }7 ? map2.drawcoastlines() #绘制海岸线* e" i% z8 `* p) M map2.drawcountries() #绘制国家 ( f& }2 P' ]9 M1 Y. E: r$ s6 ?. t map2.drawmapboundary() #绘制边界% m. f {' f7 c: R+ y map2.drawstates() #绘制州 u! A6 A6 L5 l' m2 `) C" Q# J map2.drawmeridians(np.arange(0, 360, 30)) #绘制经线2 b* w) ]- E9 N& M* Q* P; S map2.drawparallels(np.arange(-90, 90, 30)) #绘制纬线% K, ^+ d3 U* {! q1 J# E \ lon = -74lat = 40.43x,y = map2(lon, lat) #映射坐标 1 E, Q8 p" f! @0 h! K I map2.plot(x, y, ro, markersize=8) #绘制散点图 # [$ H% w6 K& W% u9 j S1 y- s% ? plt.text(x,y,New York) #文本注释 G! O. C3 t' l" T2 H8 N2 D/ h$ A1 z9 F( T
5 g8 Z3 P* w! R/ T& n7 Z

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

/ T" O% |" e9 a) }9 v

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

& J3 G: @2 r- |0 e

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

# d# ?/ D; r; a$ W 5 x' C) J, L7 q7 }( {6 K1 w4 N6 a! x/ M2 O, J/ [" R9 g - {% h+ `* E. u6 S" j) x( |5 c8 M) o3 q6 j( g
回复

举报 使用道具

相关帖子

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