数据可视化—地图可视化

[复制链接]
' ?. _& L0 b ~! j

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

# S7 Y0 m$ t3 H1 u3 x

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

! ~9 W q0 d4 p, f" L

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

import numpy as np #导入库" \3 W6 J% _6 ~$ }: i6 d import pandas as pd 5 n- c u0 i, u7 Z& H! N! e- R$ W import matplotlib.pyplot as plt1 Q, p, g( `; Q/ Q: U from mpl_toolkits.basemap import Basemap- n$ W0 j& G- x! ^9 p %matplotlib inlinemap1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0)4 _% }' R7 s' G w map1.drawcoastlines()
map1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0) ( Y/ B2 x: W# Z/ j/ c& i( h map1.drawcoastlines() #绘制海岸线1 S9 K& Y& u P& ^$ C map1.drawcountries() #绘制国家 9 \3 V. d! u' L4 p
map1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0) ( A$ n. O8 c: v d0 d map1.drawcoastlines() #绘制海岸线 & q" R! S& P& l map1.drawcountries() #绘制国家) u0 ]+ }/ I! f3 I. j1 D map1.fillcontinents(color=blue,alpha=0.5) #填充颜色5 e$ M& t. ]% h# w
map1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0) + B3 g% Y0 N N f; M9 g7 b1 L. @ map1.drawcoastlines() #绘制海岸线 ' _/ ?1 [9 Z G1 H6 R map1.drawcountries() #绘制国家 : p( r1 q8 P g2 J map1.drawmapboundary() #绘制边界 / R5 C& g- F% n0 g0 [# T/ g' W4 U map1.fillcontinents(color=blue,alpha=0.5) #填充颜色5 @ [" _9 i. m7 q map1.drawmeridians(np.arange(0, 360, 30)) #绘制经线3 q0 y6 b4 h) m8 h p map1.drawparallels(np.arange(-90, 90, 30)) #绘制纬线; b1 K& r. d% X8 W- A# ^/ O
map1 = Basemap(projection=robin, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0) $ ]* A; a( v* w' `+ o3 a1 ^1 U! ]* j map1.drawcoastlines() #绘制海岸线( i; |: Z( u m" d2 a; s map1.drawcountries() #绘制国家 6 D0 {# |! w+ C8 s! p; g- s map1.drawmapboundary() #绘制边界" G, _8 B$ @8 g* w1 [" l map1.fillcontinents(color=blue,alpha=0.5) #填充颜色2 w6 k2 a. L& W. A" ^1 O+ s+ H4 ? map1.drawmeridians(np.arange(0, 360, 30)) #绘制经线 I) F: D8 X. C* N map1.drawparallels(np.arange(-90, 90, 30)) #绘制纬线1 U8 v% `7 m, k* 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) 6 N O, Z2 I/ L6 f6 h o& R6 j map2.drawcoastlines() #绘制海岸线 + J* \ C8 j- P0 U$ w0 Z0 |$ d+ [ map2.drawcountries() #绘制国家3 L) Y1 }) l# M# j2 C; `8 e/ m map2.drawmapboundary() #绘制边界 2 V* q3 U _$ `4 | I5 g* E map2.drawstates() #绘制州 . }" i4 u' X J! u. m map2.fillcontinents(color=blue,alpha=0.5) #填充颜色! G [8 w- F1 u7 N map2.drawmeridians(np.arange(0, 360, 30)) #绘制经线) _5 x2 L/ D6 N map2.drawparallels(np.arange(-90, 90, 30))   #绘制纬线 2 G S/ z( g5 ~6 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)) g4 `) J `( r; S map2.drawcoastlines() #绘制海岸线 ' X, j* i6 L) h map2.drawcountries() #绘制国家 " s- z7 n) W' P4 H2 Z map2.drawmapboundary() #绘制边界( |0 ^/ H' Z" g) o2 t- s" X C map2.drawstates() #绘制州 ^. @9 G$ Z# z$ l0 M map2.drawmeridians(np.arange(0, 360, 30)) #绘制经线5 C1 o: z* G5 } map2.drawparallels(np.arange(-90, 90, 30)) #绘制纬线/ i8 ?. o/ y) |) y* Q# _ lon = -74lat = 40.43x,y = map2(lon, lat) #映射坐标 ( G! S) V. J2 q7 o4 p map2.plot(x, y, ro, markersize=8) #绘制散点图' g. Z5 O' Q, n
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) # W2 W) m; q% ^0 L; r T map2.drawcoastlines() #绘制海岸线 ; f3 S( p# z e6 j6 h N# v& d map2.drawcountries() #绘制国家 & g _9 c7 x9 Y) f* }4 h map2.drawmapboundary() #绘制边界 9 i' A% _% O1 h$ Z$ X2 I8 \8 [9 J map2.drawstates() #绘制州: l; q* N& N$ e+ E0 Q2 Z map2.drawmeridians(np.arange(0, 360, 30)) #绘制经线4 Q; z+ M! O4 a) N- ]+ ?' R map2.drawparallels(np.arange(-90, 90, 30)) #绘制纬线0 h2 \* Y, I; o; ~; F# K lon = -74lat = 40.43x,y = map2(lon, lat) #映射坐标 - z8 T, ]* x9 X, }1 t( z8 n map2.plot(x, y, ro, markersize=8) #绘制散点图 ( l. l' d* J8 }. ~( |+ S plt.text(x,y,New York) #文本注释 ; ]' T, \ N6 Z" S
& |- y6 N! L0 z# v3 ?- _, @6 {

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

* M+ M3 i( g9 }/ k- \

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

( k5 \6 B b$ M: P7 f1 g; e1 `

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

; k) P" W6 N, a4 I5 ^ ( B6 G6 j6 r d: a F) n: `! e5 N8 x& h 2 j1 ~" ~( v6 J. r# Q n5 [ / T3 l+ S$ f7 l- k- c7 Q c( q
回复

举报 使用道具

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