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

数据可视化—地图可视化

[复制链接]
5 A: x f% |& A

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

# T [ @4 K9 ]/ V

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

1 F; [9 v/ ?# Q+ {. R

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

import numpy as np #导入库# b- O: Q7 ?' @: U, T6 o2 `& w import pandas as pd4 s! C% h6 O( _5 _: n import matplotlib.pyplot as plt; G$ H8 N0 t# G- R1 ~; l$ l. g from mpl_toolkits.basemap import Basemap/ n+ t0 P) M, S9 x, W& C %matplotlib inlinemap1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0)2 w9 x- v9 b- ^( f4 V7 e2 p% ] map1.drawcoastlines()
map1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0)% S6 c4 ?. f7 { h map1.drawcoastlines() #绘制海岸线 2 U6 l4 @$ ]3 B' n map1.drawcountries() #绘制国家 " V1 y8 _: M# W4 V+ X0 O
map1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0): s& R8 a+ }& i9 A- F map1.drawcoastlines() #绘制海岸线( B: n8 V9 y9 p% a3 C3 ? map1.drawcountries() #绘制国家 ' z2 \+ y. d, d! C# C; G map1.fillcontinents(color=blue,alpha=0.5) #填充颜色) g8 h. Z7 ]! L6 ]6 R
map1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0) 3 T- n0 A O* Q; N. L map1.drawcoastlines() #绘制海岸线! q) T) e: S) O" f! E. v/ g map1.drawcountries() #绘制国家' w; @) C5 r, H* C9 @& _% v map1.drawmapboundary() #绘制边界 5 Y$ P9 J3 c8 d+ x9 d- j map1.fillcontinents(color=blue,alpha=0.5) #填充颜色 * j; U* F7 P6 v6 `/ D& E6 r. H map1.drawmeridians(np.arange(0, 360, 30)) #绘制经线% a6 D5 u4 T& P4 q; J map1.drawparallels(np.arange(-90, 90, 30)) #绘制纬线2 [6 h" \- k, F$ b& n
map1 = Basemap(projection=robin, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0)# z0 b8 G2 H+ } W' s* y1 o map1.drawcoastlines() #绘制海岸线* z Z, {6 u9 r% ^9 W1 c map1.drawcountries() #绘制国家 # O, e1 ~8 F$ X, r. D' k map1.drawmapboundary() #绘制边界 1 f; s+ I# Q1 W8 p0 }" \ map1.fillcontinents(color=blue,alpha=0.5) #填充颜色* J1 Z7 J0 g5 ?: L1 e% @! w map1.drawmeridians(np.arange(0, 360, 30)) #绘制经线6 F8 ^7 t. q; l' `3 n- o; u! ~ map1.drawparallels(np.arange(-90, 90, 30)) #绘制纬线 * j: w+ D% q6 _& t8 j$ 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) & m6 M# C5 c3 K! ~# t" C' \% O! T map2.drawcoastlines() #绘制海岸线 / C* S' V' E5 B: ~ map2.drawcountries() #绘制国家 % G$ [" [1 G# [; h- N map2.drawmapboundary() #绘制边界 7 f9 k9 J- z& J/ D; l# i6 s map2.drawstates() #绘制州3 X& _ S4 x4 y+ D0 y1 ? map2.fillcontinents(color=blue,alpha=0.5) #填充颜色1 n; C7 L3 b4 S+ l& {3 Z2 a% ~9 o! l9 I map2.drawmeridians(np.arange(0, 360, 30)) #绘制经线* A4 S1 y9 ^( O7 G' U map2.drawparallels(np.arange(-90, 90, 30))   #绘制纬线 ! \+ Y: H! j9 H; o/ l C' `% 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) - e- G: ~/ |3 F! l5 V2 A map2.drawcoastlines() #绘制海岸线 7 O; C- `5 z) X, c* k2 Z map2.drawcountries() #绘制国家4 W0 H3 `5 C& ]' e7 V map2.drawmapboundary() #绘制边界 & Z I7 {9 f% Q' g0 m2 D9 c/ y# v map2.drawstates() #绘制州 " m6 F# o+ q U s( y map2.drawmeridians(np.arange(0, 360, 30)) #绘制经线 & L' H' c- m3 ^: R) t# O map2.drawparallels(np.arange(-90, 90, 30)) #绘制纬线( a. I+ ^! ~, h/ F0 |- x( Q t/ A lon = -74lat = 40.43x,y = map2(lon, lat) #映射坐标 . j, X1 L- L" `$ s map2.plot(x, y, ro, markersize=8) #绘制散点图 7 i# z5 G# P9 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)7 G0 k$ N7 q1 j, U+ B map2.drawcoastlines() #绘制海岸线- U! g3 N1 a# E) q% s1 z: u map2.drawcountries() #绘制国家 ( ]" q1 _5 D5 V8 K: V map2.drawmapboundary() #绘制边界 : i, Q, T/ X. t( w5 U- h map2.drawstates() #绘制州 , Q) ?( P0 k9 z8 ~6 b. U$ Y1 ^2 u$ Q) p map2.drawmeridians(np.arange(0, 360, 30)) #绘制经线 : I. A1 ?' c$ Y$ L0 i8 Q5 A map2.drawparallels(np.arange(-90, 90, 30)) #绘制纬线6 r3 `" n% U% c" ^2 j lon = -74lat = 40.43x,y = map2(lon, lat) #映射坐标- _; C0 f0 W; }4 o" @) c+ B map2.plot(x, y, ro, markersize=8) #绘制散点图 % D8 v2 |* k S9 |: N plt.text(x,y,New York) #文本注释* ?+ S q6 U1 J( g+ \
) k" p4 P+ w$ m) \$ X

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

( ]5 r1 }- E; e+ U' q m

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

; A" ?0 t- J: n9 L

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

. P: A& r4 @# H) N' E ! t( ?$ {2 O3 H3 n! ?. M / i! `6 B) X6 L& L I 2 _5 z5 a3 V4 @* k" Y; ^) r6 } / k" N7 m. _- b5 d* n. R
回复

举报 使用道具

相关帖子

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