python 画散点图

# -*- coding: utf-8 -*-
from datetime import datetime


from mpl_toolkits.basemap import Basemap
import matplotlib.pyplot as plt

import open_file

# 把经纬度点映射到地图上

fig = plt.figure(figsize=(16, 8))
ax = fig.add_axes([0.1, 0.1, 0.7, 0.7])  # 添加坐标
# latlon_limit = [73.44, 135.08, 18.16, 53.56]  # 经纬度区间
latlon_limit = [72, 136, 18, 55]
# latlon_limit = [-180, 180, -90, 90]
m = Basemap(llcrnrlon=latlon_limit[0], llcrnrlat=latlon_limit[2], urcrnrlon=latlon_limit[1], urcrnrlat=latlon_limit[3],
            projection='cyl')

m.readshapefile("china-shapefiles-master/china", 'china', drawbounds=True)
m.drawmapboundary()  # 边 界
# m.fillcontinents()  # 大陆填充
drawparallels = [i for i in range(latlon_limit[2], latlon_limit[3], 5)]
drawmeridians = [i for i in range(latlon_limit[0], latlon_limit[1], 5)]
m.drawparallels(drawparallels, labels=[1, 0, 0, 0])  # 画出纬线  lables 设置显示对应纬度值
m.drawmeridians(drawmeridians, labels=[0, 0, 0, 1])  # 画出经线

marker, linewidths, dpi = '.', 0.6, 900  # 设置形状,边框大小,分辨率

xn_lat, xn_lon = open_file.open_xn('float')  # 虚拟站点
xn_lon, xn_lat = m(xn_lon, xn_lat)  # lon, lat为给定的经纬度,可以使单个的,也可以是列表
m.scatter(xn_lon, xn_lat, c='green', s=0.1, marker=marker, linewidths=linewidths)  # 标注出所在的点,s为点的大小,还可以选择点的性状和颜色等属

ys_lat, ys_lon = open_file.open_ys('float')  # 原始站点
ys_lon, ys_lat = m(ys_lon, ys_lat)  # lon, lat为给定的经纬度,可以使单个的,也可以是列表
m.scatter(ys_lon, ys_lat, c='purple', s=0.1, marker=marker, linewidths=linewidths)  # 标注出所在的点,s为点的大小,c为颜色

out_file = '%s_%s%s_%s.png' % (datetime.now().strftime('%Y%m%d%H%M&S'), marker, linewidths, dpi)
ax.axis('off')
plt.gca().xaxis.set_major_locator(plt.NullLocator())
plt.gca().yaxis.set_major_locator(plt.NullLocator())
plt.subplots_adjust(top=1, bottom=0, left=0, right=1, hspace=0, wspace=0)
plt.margins(0, 0)
plt.savefig(out_file, transparent=True, bbox_inches='tight', dpi=dpi, pad_inches=0.0, set_visiable=False, format='png')

# plt.show()

# plt.close()

 

 

 

参考: https://blog.csdn.net/u013634684/article/details/49646311?utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2~all~first_rank_v2~rank_v25-7-49646311.nonecase&utm_term=%E5%9C%A8python%E4%B8%AD%E6%95%A3%E7%82%B9%E5%9B%BE%E4%B8%AD%E5%BD%A2%E7%8A%B6%E6%80%8E%E4%B9%88%E8%AE%BE%E7%BD%AE

           https://blog.csdn.net/qq_38486203/article/details/80578260 

   https://ww2.mathworks.cn/help/matlab/ref/scatter.html#btrli6o-1

 

posted on 2020-08-19 18:30  闹不机米  阅读(618)  评论(0编辑  收藏  举报

导航