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

数据可视化—地图可视化

[复制链接]
$ h7 o* N+ C" H/ e; \! s" s/ {

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

- @9 k0 @4 m( o: `/ q, e, a% G

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

4 b' q: j( _* W' l

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

import numpy as np #导入库5 }2 b5 E! [3 C# B6 b" g import pandas as pd 8 O2 m' I# z$ k$ u* P import matplotlib.pyplot as plt1 n, d" ^, E: |+ @3 ? from mpl_toolkits.basemap import Basemap ( a) `8 I8 i0 y2 o %matplotlib inlinemap1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0) . M" D0 o/ p' |$ J S9 \( k4 H map1.drawcoastlines()
map1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0) 1 ~6 x9 m3 {" z8 P- X map1.drawcoastlines() #绘制海岸线7 ^: N( {: F9 q0 b3 v: Q; O, r) z map1.drawcountries() #绘制国家 5 l8 g- v4 e1 ^6 d5 O" ]0 O1 c
map1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0)3 y4 |% E; I- }; c map1.drawcoastlines() #绘制海岸线 ' M; ?6 j8 ~. H6 l map1.drawcountries() #绘制国家 & P+ Y v- q8 F2 @+ _ map1.fillcontinents(color=blue,alpha=0.5) #填充颜色 . m( j' E/ L. k- a) Y. z
map1 = Basemap(projection=ortho, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0)) Y L1 @5 e& f1 {4 Q, A/ @ map1.drawcoastlines() #绘制海岸线2 W7 ^' _& K1 K* a map1.drawcountries() #绘制国家! ]0 {+ _/ {; @ map1.drawmapboundary() #绘制边界% P6 U' ?! u' s- M map1.fillcontinents(color=blue,alpha=0.5) #填充颜色: l& c% L" x: u; w4 R8 K+ C8 m" y map1.drawmeridians(np.arange(0, 360, 30)) #绘制经线% P+ n0 k* m6 T8 f& c( E2 S map1.drawparallels(np.arange(-90, 90, 30)) #绘制纬线 % _9 J; }9 J0 O! r' I
map1 = Basemap(projection=robin, lat_0=90, lon_0=-105,resolution=l, area_thresh=1000.0) + H6 _) Z d Y9 Q) W$ Z map1.drawcoastlines() #绘制海岸线 ( ^' y6 l% y6 p' z0 b) \ map1.drawcountries() #绘制国家( x% O& B7 z! `9 C+ q# I5 s: B map1.drawmapboundary() #绘制边界 - y8 c: S- ^6 W! T map1.fillcontinents(color=blue,alpha=0.5) #填充颜色 6 N9 `6 ]4 S9 Q+ }! c& g map1.drawmeridians(np.arange(0, 360, 30)) #绘制经线 3 H5 H U5 ~2 }6 g map1.drawparallels(np.arange(-90, 90, 30)) #绘制纬线 ; K1 P( E! \& b! J6 ]4 z! h, u" Q
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): B0 _/ K6 A0 G. M map2.drawcoastlines() #绘制海岸线 1 g/ Y6 Y; n4 {* I1 ?6 t- u map2.drawcountries() #绘制国家 # Q8 I0 G- i+ C+ s$ `' l1 H map2.drawmapboundary() #绘制边界 , g5 `- v a$ _7 L map2.drawstates() #绘制州 i" G @. b: V1 Q map2.fillcontinents(color=blue,alpha=0.5) #填充颜色 9 @9 q; d+ e7 |+ ` map2.drawmeridians(np.arange(0, 360, 30)) #绘制经线9 \5 q, K p/ R3 N map2.drawparallels(np.arange(-90, 90, 30))   #绘制纬线( p# H' \7 z; H \* Z
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), V0 _# O( I; I map2.drawcoastlines() #绘制海岸线) n+ h b0 A9 l: r" W9 A# t map2.drawcountries() #绘制国家 & Y4 E. F9 G3 v3 M map2.drawmapboundary() #绘制边界 : e' h% w8 c7 f5 [- P/ ^ map2.drawstates() #绘制州1 n0 |; Q- h1 f9 s' ~/ p map2.drawmeridians(np.arange(0, 360, 30)) #绘制经线 + y- s2 B4 ]8 K% N1 [" V3 j2 r/ ^# w map2.drawparallels(np.arange(-90, 90, 30)) #绘制纬线 i2 {! l7 }9 L; r- y; y3 T/ R lon = -74lat = 40.43x,y = map2(lon, lat) #映射坐标 8 Y. J+ A' K$ M) I+ f& a2 d8 U; }, S map2.plot(x, y, ro, markersize=8) #绘制散点图8 h1 `4 i: Q1 |9 i& I7 p+ 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)6 H+ U+ j9 X+ O: U* g map2.drawcoastlines() #绘制海岸线 ) X# h' l5 [4 ?+ C O map2.drawcountries() #绘制国家/ v& a) _" d* f6 ]$ x: _ map2.drawmapboundary() #绘制边界 / ], W) S9 S, S3 U- v+ `# Z map2.drawstates() #绘制州 + n& W* i# ?+ g2 N S- L map2.drawmeridians(np.arange(0, 360, 30)) #绘制经线 + w2 V! e+ W( _8 y) f- a map2.drawparallels(np.arange(-90, 90, 30)) #绘制纬线 ) k; H+ L1 E# f) L/ b) S lon = -74lat = 40.43x,y = map2(lon, lat) #映射坐标 4 C g& E) S5 U" o map2.plot(x, y, ro, markersize=8) #绘制散点图2 j- ^& Y1 T+ U plt.text(x,y,New York) #文本注释 j* k/ J: G7 U( U8 y) N( g& t
Y) f0 \0 n& l5 K9 B7 J! R

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

" q6 F. L J& s# E4 E" L4 q4 U" D1 C

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

8 m% U/ g" |7 T+ _

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

( S) I( H9 M3 l: ^8 j* q; ?$ C G( {: R4 ~7 [ `! P5 f$ N# V: _3 q$ F8 U1 \ ) @ \" g" G( D- ^2 P : T6 o9 ?( B$ f$ ^
回复

举报 使用道具

相关帖子

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