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

数据可视化—地图可视化

[复制链接]
3 C3 j" M4 J* }' E8 m+ b: Z2 x- y

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

A' S2 I+ C$ @/ v

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

# _5 G3 G( u1 G+ E

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

import numpy as np #导入库! \; n; z3 c+ B( m& ^% c import pandas as pd 5 u% w. y; t: d$ X# b$ V import matplotlib.pyplot as plt% q$ O+ J! I6 s2 q# a" N from mpl_toolkits.basemap import Basemap8 [+ W" T9 b+ S: i& o7 V %matplotlib inlinemap1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0) 5 S; Y+ ^3 x' E0 |! @' \ map1.drawcoastlines()
map1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0)2 |/ L, u2 _) J8 f/ u# |4 H# W map1.drawcoastlines() #绘制海岸线" t, W7 }% H! {6 |: R: Q8 ]: M map1.drawcountries() #绘制国家# c8 w! w3 o- O$ @& A
map1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0)/ |$ h7 v6 M: H T6 }. w/ U1 g; Q map1.drawcoastlines() #绘制海岸线 4 W X# a+ O, C/ C map1.drawcountries() #绘制国家 # }: W- e7 v: P, o) s map1.fillcontinents(color=blue,alpha=0.5) #填充颜色, f- ?) _7 e/ c) [' E
map1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0) * |) O1 y' V- U# v& ~2 p! t map1.drawcoastlines() #绘制海岸线$ J- N& q5 c' }& S- D- V map1.drawcountries() #绘制国家 . B2 h$ E4 [5 B7 ~ map1.drawmapboundary() #绘制边界 % U G4 t `6 l& o4 d map1.fillcontinents(color=blue,alpha=0.5) #填充颜色 ; D# z% o$ }. ^( P+ m, g1 i( Y0 L1 b map1.drawmeridians(np.arange(0, 360, 30)) #绘制经线/ ~: E/ ~* _3 P" p map1.drawparallels(np.arange(-90, 90, 30)) #绘制纬线* z4 x; |# N9 `$ x
map1 = Basemap(projection=robin, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0) \/ _' c9 S" @! F# ` map1.drawcoastlines() #绘制海岸线 / T8 z% K0 ~1 }% S0 p map1.drawcountries() #绘制国家 - G* f, d# c- G7 a. [7 |) D4 K map1.drawmapboundary() #绘制边界4 X" W7 L* L3 T) h3 { map1.fillcontinents(color=blue,alpha=0.5) #填充颜色3 X9 ^9 b9 M4 J9 z2 B) x map1.drawmeridians(np.arange(0, 360, 30)) #绘制经线 4 q2 p v d- I* T0 h2 M$ x8 b map1.drawparallels(np.arange(-90, 90, 30)) #绘制纬线8 `: Z, c+ p, @1 l: [. [% ]
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) 9 ^. J0 U6 r# a/ k. l* A map2.drawcoastlines() #绘制海岸线 # @/ x9 R) H2 P map2.drawcountries() #绘制国家 / U6 ]% t0 f) u- Z# G, R4 V1 u map2.drawmapboundary() #绘制边界" g2 V" ?" I3 [$ p map2.drawstates() #绘制州& q+ ?( ]% ]. C0 K$ x* f map2.fillcontinents(color=blue,alpha=0.5) #填充颜色 $ O! S4 p! A8 d) m" h5 O8 @ map2.drawmeridians(np.arange(0, 360, 30)) #绘制经线9 ]7 P' t$ [3 L' ~, ? map2.drawparallels(np.arange(-90, 90, 30))   #绘制纬线+ S; O/ [8 e* p8 R" Z2 K! R
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) . ]& L6 r( P/ O! p$ B map2.drawcoastlines() #绘制海岸线6 F# Q @' o) v. I8 J" B/ p5 N map2.drawcountries() #绘制国家 5 q, W6 D ?) |$ ? map2.drawmapboundary() #绘制边界 M2 g9 R4 t8 d( E0 t3 X map2.drawstates() #绘制州 2 u8 l: Z. w6 i map2.drawmeridians(np.arange(0, 360, 30)) #绘制经线 ( R0 D# W+ k5 Z* c, {# }& g& Y map2.drawparallels(np.arange(-90, 90, 30)) #绘制纬线 $ l: A) Z3 d! x lon = -74lat = 40.43x,y = map2(lon, lat) #映射坐标 ( A- w ~7 V5 r1 v map2.plot(x, y, ro, markersize=8) #绘制散点图 v# Y- t+ k. F
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) ( k" [1 Z3 D" w$ L0 N map2.drawcoastlines() #绘制海岸线6 I2 ^0 H& m# f A" v: { map2.drawcountries() #绘制国家0 e1 W! \3 ]7 @1 S map2.drawmapboundary() #绘制边界' g! [2 D$ E! U, U3 o map2.drawstates() #绘制州" O0 E1 v, d6 R9 S map2.drawmeridians(np.arange(0, 360, 30)) #绘制经线# f2 N$ [+ U' s' O+ y" o map2.drawparallels(np.arange(-90, 90, 30)) #绘制纬线 2 B% l5 A5 s% }# Q lon = -74lat = 40.43x,y = map2(lon, lat) #映射坐标* b, K1 A3 Z; I6 [# P' g1 i map2.plot(x, y, ro, markersize=8) #绘制散点图 6 U+ M3 O7 n: V plt.text(x,y,New York) #文本注释, V8 F; F' ^6 B
+ M: `- ^/ N$ E6 _7 x

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

9 H4 U7 P; k% D/ Y

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

! N3 O9 o+ R5 J3 f: v" e

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

4 a$ ?9 C. i- R( }# w1 y0 N- F8 |8 i- L4 k! z9 ]* j 6 q, j% ^5 r5 b) R d+ U& A& |. m5 m3 E2 U6 K9 t" a . [- z% {& @& `( v1 {9 w; H
回复

举报 使用道具

相关帖子

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