今天给大家推送的是地图可视化的知识,如何用Python实现地图可视化,地图可视化常用于地理信息系统,本节选用python中的自带库matplotlib,实现地图可视化,一起学习吧!
可视化直观理解就是转化为视觉所能感知。可视化的基本含义是将科学计算中产生的大量非直观的、抽象的或者不可见的数据,借助计算机图形学和图像处理等技术,以图形图像信息的形式,直观、形象地表达出来,并进行交互处理。地理信息可视化是运用图形学、计算机图形学和图像处理技术,将地学信息输入、处理、查询、分析以及预测的结果和数据以图形符号、图标、文字、表格、视频等可视化形式显示并进行交互的理论、方法和技术。
在地理信息系统中,可视化则以地理信息科学、计算机科学、地图学、认知科学、信息传输学与地理信息系统为基础,并通过计算机技术、数字技术、多媒体技术动态,直观、形象地表现、解释、传输地理空间信息并揭示其规律,是关于信息表达和传输的理论、方法与技术的一门学科。
- import numpy as np #导入库
- import pandas as pd
- import matplotlib.pyplot as plt
- from mpl_toolkits.basemap import Basemap
- %matplotlib inline
- map1 = Basemap(projection='ortho', lat_0=90, lon_0=-105,resolution='l', area_thresh=1000.0)
- map1.drawcoastlines()
- map1 = Basemap(projection='ortho', lat_0=90, lon_0=-105,resolution='l', area_thresh=1000.0)
- map1.drawcoastlines() #绘制海岸线
- map1.drawcountries() #绘制国家
- map1 = Basemap(projection='ortho', lat_0=90, lon_0=-105,resolution='l', area_thresh=1000.0)
- map1.drawcoastlines() #绘制海岸线
- map1.drawcountries() #绘制国家
- map1.fillcontinents(color='blue',alpha=0.5) #填充颜色
- map1 = Basemap(projection='ortho', lat_0=90, lon_0=-105,resolution='l', area_thresh=1000.0)
- map1.drawcoastlines() #绘制海岸线
- map1.drawcountries() #绘制国家
- map1.drawmapboundary() #绘制边界
- map1.fillcontinents(color='blue',alpha=0.5) #填充颜色
- map1.drawmeridians(np.arange(0, 360, 30)) #绘制经线
- map1.drawparallels(np.arange(-90, 90, 30)) #绘制纬线
- map1 = Basemap(projection='robin', lat_0=90, lon_0=-105,resolution='l', area_thresh=1000.0)
- map1.drawcoastlines() #绘制海岸线
- map1.drawcountries() #绘制国家
- map1.drawmapboundary() #绘制边界
- map1.fillcontinents(color='blue',alpha=0.5) #填充颜色
- map1.drawmeridians(np.arange(0, 360, 30)) #绘制经线
- map1.drawparallels(np.arange(-90, 90, 30)) #绘制纬线
- 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)
- map2.drawcoastlines() #绘制海岸线
- map2.drawcountries() #绘制国家
- map2.drawmapboundary() #绘制边界
- map2.drawstates() #绘制州
- map2.fillcontinents(color='blue',alpha=0.5) #填充颜色
- map2.drawmeridians(np.arange(0, 360, 30)) #绘制经线
- map2.drawparallels(np.arange(-90, 90, 30)) #绘制纬线
- 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)
- map2.drawcoastlines() #绘制海岸线
- map2.drawcountries() #绘制国家
- map2.drawmapboundary() #绘制边界
- map2.drawstates() #绘制州
- map2.drawmeridians(np.arange(0, 360, 30)) #绘制经线
- map2.drawparallels(np.arange(-90, 90, 30)) #绘制纬线
- lon = -74lat = 40.43x,y = map2(lon, lat) #映射坐标
- map2.plot(x, y, 'ro', markersize=8) #绘制散点图
- 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)
- map2.drawcoastlines() #绘制海岸线
- map2.drawcountries() #绘制国家
- map2.drawmapboundary() #绘制边界
- map2.drawstates() #绘制州
- map2.drawmeridians(np.arange(0, 360, 30)) #绘制经线
- map2.drawparallels(np.arange(-90, 90, 30)) #绘制纬线
- lon = -74lat = 40.43x,y = map2(lon, lat) #映射坐标
- map2.plot(x, y, 'ro', markersize=8) #绘制散点图
- plt.text(x,y,'New York') #文本注释
学习编程没有什么捷径可言,“书山有路勤为径,学海无涯苦作舟”。多学、多练、多总结。