一、数据文件准备

1、Info.csv

name,val,lat,lon
南京  ,4.23,32.04,118.78
徐州  ,4.13,34.26,117.2
睢宁  ,4.13,33.89,117.94
沛县  ,4.1,34.73,116.93
丰县  ,4.1,34.79,116.57
邳县  ,4.1,34.3,117.97
铜山  ,4.1,34.26,117.2
新沂  ,4.1,34.38,118.33
淮安  ,4.2,33.5,119.15
楚州,4.2,33.5,119.13
淮阴  ,4.1,33.62,119.02
涟水  ,4.1,33.77,119.26
新兴,4.05,33.46,120.09
步凤,4.05,33.34,120.32
盐城  ,4.1,33.38,120.13
阜宁  ,4.05,33.78,119.79
滨海  ,4.05,34.01,119.84
东台  ,4.05,32.84,120.31
盐都,4.05,33.33,120.15
建湖  ,4.05,33.46,119.77
射阳  ,4.1,33.77,120.26
大丰  ,4.1,33.19,120.45
宿迁  ,4.17,33.96,118.3
泗洪  ,4.17,33.46,118.23
沭阳  ,4.1,34.12,118.79
宿城,4.1,33.97,118.25
宿豫,4.1,33.95,118.32
泗洪  ,4.1,33.46,118.23
泰州  ,4.2,32.49,119.9
扬州  ,4.37,32.39,119.42
南通  ,4.15,32.01,120.86
如皋  ,4.15,32.39,120.56
海门  ,4.15,31.89,121.15
启东  ,4.15,31.8,121.66
海安  ,4.2,32.57,120.45
海安  ,4.2,32.57,120.45
通州,4.23,32.08,121.07
连云港  ,4.1,34.59,119.16
灌云  ,4.1,34.3,119.23
东海  ,4.1,34.54,118.75
赣榆  ,4.1,34.83,119.11
灌南  ,4.1,34.09,119.36
镇江  ,4.4,32.2,119.44
无锡  ,4.29,31.59,120.29
苏州  ,4.29,31.32,120.62
常州  ,4.29,31.79,119.95
昆山  ,4.29,31.39,120.95

第一列是城市名称,第二列是数值,第三四列是城市对应的真实纬度和经度。

2、CHN_adm/CHN_adm3

需要下载CHN_adm这个压缩文件,使用其画出地图,可以自行下载或者:

在这下载:https://download.csdn.net/download/mikasa3/10371748

二、导入模块包

可参考Windows下安装Python、matplotlib包 及相关
https://blog.csdn.net/mikasa3/article/details/78942650

1、numpy

2、pandas

3、matplotlib

4、Basemap

三、完整代码

如下:

# coding=utf-8
import csv
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from mpl_toolkits.basemap import Basemap
from matplotlib.patches import Polygon
def DrawPointMap(file_name):fig = plt.figure()ax1 = fig.add_axes([0.1,0.1,0.8,0.8])#[left,bottom,width,height]map = Basemap(projection='mill',lat_0=36,lon_0=122,\llcrnrlat=30.5 ,urcrnrlat=35.3,llcrnrlon=116.2,urcrnrlon=121.99,\ax=ax1,rsphere=6371200.,resolution='h',area_thresh=1000000)shp_info = map.readshapefile('CHN_adm/CHN_adm3','states',drawbounds=False)for info, shp in zip(map.states_info, map.states):proid = info['NAME_1']if proid == 'Jiangsu':poly = Polygon(shp,facecolor='w',edgecolor='k', lw=1.0, alpha=0.1)#注意设置透明度alpha,否则点会被地图覆盖ax1.add_patch(poly)       parallels = np.arange(30.6,35.3,2) map.drawparallels(parallels,labels=[1,0,0,0],fontsize=10) #parallelsmeridians = np.arange(116.3,122,2)map.drawmeridians(meridians,labels=[0,0,0,1],fontsize=10) #meridiansposi = pd.read_csv(file_name)lat = np.array(posi["lat"][0:48])#获取经纬度坐标,一共有48个数据                        lon = np.array(posi["lon"][0:48])                        val = np.array(posi["val"][0:48],dtype=float)#获取数值size = (val-np.min(val)+0.05)*800#对点的数值作离散化,使得大小的显示明显x,y = map(lon,lat)map.scatter(x, y, s=size, color = 'r') #要标记的点的坐标、大小及颜色for i in range(0,47):plt.text(x[i]+5000,y[i]+5000,str(val[i]))#plt.text(lat[i],lon[i],str(val[i]), family='serif', style='italic', ha='right', wrap=True)#plt.annotate(s=3.33,xy=(x,y),xytext=None, xycoords='data',textcoords='offset points', arrowprops=None,fontsize=16)map.drawmapboundary()  #边界线#map.fillcontinents()  map.drawstates()        #map.drawcoastlines()  #海岸线 map.drawcountries()     map.drawcounties()     plt.title('Jiangsu in CHINA')#标题plt.savefig('Jiangsu.png', dpi=100, bbox_inches='tight')#文件命名为Jiangsu.png存储plt.show()
if __name__=='__main__':DrawPointMap("Info.csv")

四、运行结果

如图:

Python可视化-县市按经纬度坐标在地图标记数值相关推荐

  1. 利用python查询电脑配置_干货|利用Python将地址转换为经纬度坐标

    本文主要讲述利用Python将文本格式的地址转换为数字格式的经纬度坐标数据,主要步骤有: 注册高德地图API账号,申请Web服务的Key 了解并测试地理编码API服务 利用Python实现地址转坐标 ...

  2. python学习-108-根据经纬度坐标计算距离

    前言: 根据经纬度坐标计算两点距离,并不能直接使用欧氏距离,因为经纬度是在曲面上的要计算弧度的影响.因此本文根据经纬度坐标公式代码实现. 参考链接: https://blog.csdn.net/xie ...

  3. 教程 | 批量将经纬度坐标标注到地图上,不用Python,不用GIS软件

    小O地图EXE版三大功能,地图数据查询.地图数据分析.地图可视化! 在以往的文章中大多介绍前两者,可视化功能介绍较少,本文将直接上视频,通过B站视频演示地图可视化功能使用. 本文视频演示使用小O地图软 ...

  4. 根据经纬度坐标获得省市区县行政区划城市名称,自建数据库 java python php c# .net 均适用

    文章目录 步骤一.下载省市区边界数据 步骤二.解析CSV文件导入数据库 步骤三.在程序中根据坐标解析获得城市 在LBS应用中,根据坐标来解析获得对应是哪个城市是一个很常见的功能,比如App里面通过手机 ...

  5. Google Earth Engine——从Python中的经纬度坐标获取Modis正弦图块网格位置

    许多 MODIS 数据产品都组织在基于正弦投影的瓦片网格中.您可以在这里找到一个在线计算器,它将从图块转换为纬度和经度坐标.本教程将演示如何在 Python 中执行此转换. 目标 读入 MODIS 瓦 ...

  6. 已知经纬度坐标求两点间距离,用python表示

    已知经纬度坐标求两点间距离,用python表示 已知地球上任意两点(lon1, lat1),( lon2, lat2)的经纬度坐标,求两点间的距离用haversine表示: 1.首先先将经纬度坐标的角 ...

  7. python坐标表示_已知经纬度坐标求两点间距离,用python表示

    已知经纬度坐标求两点间距离,用python表示 已知地球上任意两点(lon1, lat1),( lon2, lat2)的经纬度坐标,求两点间的距离用haversine表示: 1.首先先将经纬度坐标的角 ...

  8. python——经纬度坐标和平面投影坐标的相互转换

    美赛建模需要使用到平面坐标系去做基于时间序列的运动范围模型,所以需要对经纬度进行坐标系转换,转换到XY坐标系下.同时,在机器人的路径规划等方面依然会经常使用到坐标系的转换,所以记录一下. 文章目录 经 ...

  9. 【GUI界面】基于Python的WSG84三点定位系统(经纬度坐标与平面坐标转换法求解)

    [GUI界面]基于Python的WSG84三点定位系统(经纬度坐标与平面坐标转换法求解) 方法汇总: blog.csdn.net/weixin_53403301/article/details/128 ...

最新文章

  1. Matlab与线性代数 -- 数组与矩阵的乘幂
  2. 组件对象模型:COM
  3. 使用 cf push 部署应用到 SAP BTP 后启动失败 start unsuccessful 该如何处理
  4. 【Flink】Flink 资源相关 Slot SlotPool
  5. react-redux基本写法
  6. java php cms_内容管理系统的开发策略研究——以PHP CMS、Node.js CMS、Java CMS为例
  7. 杭电1425 sort
  8. 【权限设计】如何以“权限”为单位的进行权限设计(二)
  9. 洛谷P2580 于是他错误的点名开始了 题解
  10. jQuery事件委派与移除
  11. google地图静态api使用助手(html源码)
  12. 转发小程序php,微信小程序 转发功能的实现
  13. 详解 n 维向量、n 维数组 和 矩阵的维度(转载)
  14. 每日一句_《临江仙·滚滚长江东逝水》
  15. 天地波超视距雷达在远洋无人航运中的运用
  16. JavaScript-PC端网页特效
  17. Android Studio混淆相关总结
  18. MySql创建联合索引
  19. C# 实现打印机队列监控Win32_PrintJob,Win32_Printer
  20. 20款漂亮免费经典国外英文复古字体

热门文章

  1. 修改Pycharm中默认浏览器
  2. 最早的java农场有四季_准备java做农场
  3. WARNING *** file size (1080329) not 512 + multiple of sector size (512)
  4. 树莓派 SD卡 的系统备份 方法 WindowsLinux (奶妈式教学)
  5. 计算机硬盘是什么材质的钢材,现在千万别装机了:CPU/内存/硬盘/机箱/电源齐涨价...
  6. python爬虫抓取微信头像
  7. 2020.09.30【RNA-seq流程】丨转录组生信分析全流程
  8. Java1--4章复习 5.2
  9. 无代码的时代真的来了吗?系列一:前世今生
  10. 网管交换机的功能还有哪些不知道的?