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

绘制海岸线国界州界及填充海陆

[复制链接]
8 ?# _) G( d |. Y, v/ G

1. 海岸线 Basemap.drawcoaslines()

" @' j+ O1 _' Z7 i. [, N/ M

2. 国界线 Basemap.drawcountries()

9 `- E/ r' _! ]2 H1 L

特别要注意国界线有无争议,此处主要说明basemap画国界线的用法,实际国界线以我们国家(中国)制作的地图为准!

# H! U$ ~) W( P% x. k' ^

3. 州界线 Basemap.drawstates(),主要针对美洲

# k+ `9 @& {! v6 {
import numpy as np $ D' R$ H" w) U; d: a5 _$ y8 C0 ~ import matplotlib.pyplot as plt 6 ?8 \! q- x9 i( ]+ P from mpl_toolkits.basemap import Basemap # _& C4 ?, C. h* G% n! K ' E5 O, i" m1 B( L& } map = Basemap()2 R* {' x# j4 U+ ^# ~: U map.drawcoastlines(color=r, linewidth=.5)# h% J2 y6 x1 \. f4 b5 F% N- G% ] map.drawcountries(color=g, linewidth=.25) - m9 G, b8 ~+ s* ` map.drawstates(color=b, linewidth=.2) 1 Y' b1 g! b) T7 p: }% j9 K map.drawparallels(circles=np.linspace(-90, 90, 7),9 p, x! P T6 s% ]* G- \ labels=[1, 0, 0, 0], color=gray)+ A' x2 `2 I: y7 g: b' o map.drawmeridians(meridians=np.linspace(-180, 180, 13), * u; i0 T I O, V' q Q' y labels=[0, 0, 0, 1], color=gray) , O* X1 h8 U6 Q2 |) O) ^6 v plt.show()
' j5 V" N; x; _
/ A/ k# N" L- T3 N# K' i

4. 用不同颜色填充海洋和陆地

) b( e6 w- T, Z+ M5 J F! O

4.1 海洋 Basemap.drawmapboundary(fill_color=#87CEEB)

2 H1 {9 G9 Y3 ?2 K: [: k

此处海洋颜色的天蓝色

: T' Q( h9 j" b/ G- @% H
#87CEEB
7 H2 R2 a/ M) ^- C: n3 m

4.2 陆地及湖泊 Basemap.fillcontinents(color=#808000, lake_color=#87CEEB)

: f& J; }- U0 P1 }6 X+ a l1 Q

陆地为橄榄色

3 g, ]! l1 {. h4 q6 h4 [, w
#808000
9 M5 ^; P+ j6 Q

湖泊为天蓝色

) k. c- K" P M/ N6 [
#87CEEB
: Y! C, O/ J/ u9 F+ q
import numpy as np# Q* {. U6 U; e4 A$ d$ R import matplotlib.pyplot as plt 7 |5 B, y5 K/ B. M& _" V from mpl_toolkits.basemap import Basemap3 u+ M+ `9 v+ [: y" L: W * F s/ P% Y; c6 T9 N& H map = Basemap() # Y2 p% C* P4 ~6 C: e/ c map.drawcoastlines(color=r, linewidth=.5) 8 A9 h7 @2 ~, k' ^ map.drawcountries(color=g, linewidth=.25) & h# C r( H; ~. v/ M map.drawstates(color=b, linewidth=.2)6 I! F: [2 Z+ _- X# c4 x6 G5 W& M6 | map.drawparallels(circles=np.linspace(-90, 90, 7), ) C: e7 Z1 R* a: c1 ` labels=[1, 0, 0, 0], color=gray) 4 S5 O. c( V4 w" D6 M map.drawmeridians(meridians=np.linspace(-180, 180, 13),/ [4 Y0 r6 p5 i. L labels=[0, 0, 0, 1], color=gray) ( m, Y, Q9 y% C' F: g4 ~8 b map.fillcontinents(color=#808000, lake_color=#87CEEB)6 G- l; x- q3 B map.drawmapboundary(fill_color=#87CEEB)7 g/ q! o7 M) { plt.show()
" B) ~" Y$ u* k a4 |3 u& ]
3 l( B J& t) C$ J( M ' p6 T: E% D3 x" t+ n6 ] 3 n6 d# V( P5 c. G5 D' R ; W% g" E8 H* p) R) P! G x$ Q8 m S3 \& M3 y, h6 L* L" s
回复

举报 使用道具

相关帖子

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