当前位置: 首页 > news >正文

互联网网站建设一条龙服务百度seo营销推广多少钱

互联网网站建设一条龙服务,百度seo营销推广多少钱,浦东新区建设机械网站,传媒公司怎么注册……开学回所,打开电脑spyder一看一脸懵逼,简直不敢相信这些都是我自己用过的代码,想把以前的自己喊过来科研了() 废话少说,最近写小综述论文,需要绘制一个地图底图+散点图&#xff…

……开学回所,打开电脑spyder一看一脸懵逼,简直不敢相信这些都是我自己用过的代码,想把以前的自己喊过来科研了(×)
废话少说,最近写小综述论文,需要绘制一个地图底图+散点图,点大小对应值大小的,来总结目前的观测结果,图大概如下:

在这里插入图片描述Locations and concentrations of BC snow observations collected from Arctic campaigns between 2005–2010. Reprinted from Dou and Xio (2016).

其实就是地图底图+散点图的绘制,思路很明确:先绘制底图+地理要素,再在底图上画散点图,那么作为开学编程复建,先一步步来。

底图绘制

主要是想画一下北极的底图,这个简单,无脑画就是了:

import matplotlib.path as mpathimport cmapsimport matplotlib.ticker as mtickerimport matplotlib.pyplot as plt###引入库包
import matplotlib as mpl
import cartopy.crs as ccrs
import cartopy.feature as cfeature
from cartopy.mpl.gridliner import LONGITUDE_FORMATTER, LATITUDE_FORMATTER
proj =ccrs.NorthPolarStereo(central_longitude=0)#设置地图投影
#在圆柱投影中proj = ccrs.PlateCarree(central_longitude=xx)
leftlon, rightlon, lowerlat, upperlat = (-180,180,60,90)#经纬度范围img_extent = [leftlon, rightlon, lowerlat, upperlat]
fig1 = plt.figure(figsize=(12,10))#设置画布大小
f1_ax1 = fig1.add_axes([0.2, 0.3, 0.5, 0.5],projection = ccrs.NorthPolarStereo(central_longitude=0))#绘制地图位置
#注意此处添加了projection = ccrs.NorthPolarStereo(),指明该axes为北半球极地投影
#f1_ax1.gridlines(crs=ccrs.PlateCarree(), draw_labels=True,#                 linewidth=1, color='grey',linestyle='--')
f1_ax1.set_extent(img_extent, ccrs.PlateCarree())
f1_ax1.add_feature(cfeature.COASTLINE)
f1_ax1.add_feature(cfeature.OCEAN)
f1_ax1.add_feature(cfeature.LAND)
g1=f1_ax1.gridlines(crs=ccrs.PlateCarree(), draw_labels=True, linewidth=1, color='gray',linestyle='--')
g1.xlocator = mticker.FixedLocator(np.linspace(-180,180,13))
g1.ylocator = mticker.FixedLocator(np.linspace(60, 90,4))
#plt.show()
theta = np.linspace(0, 2*np.pi, 100)
center, radius = [0.5, 0.5], 0.44
verts = np.vstack([np.sin(theta), np.cos(theta)]).T
circle = mpath.Path(verts * radius + center)
f1_ax1.set_boundary(circle, transform=f1_ax1.transAxes)
plt.show()

结果出现了这个报错:

D:\Anaconda\lib\site-packages\cartopy\io\__init__.py:241: DownloadWarning: Downloading: https://naturalearth.s3.amazonaws.com/50m_physical/ne_50m_coastline.zipwarnings.warn(f'Downloading: {url}', DownloadWarning)

查了下,这是由于cartopy无法下载地图数据导致,大部分原因都是因为网络问题(墙),既然如此,我们就手动下载吧。
先查看一下我们cartopy读取数据的路径:

import cartopy
cartopy.config

返回:

{'pre_existing_data_dir': '','data_dir': 'C:\\Users\\zzl\\.local\\share\\cartopy','cache_dir': 'C:\\Users\\zzl\\AppData\\Local\\Temp\\cartopy_cache_dir','repo_data_dir': 'D:\\Anaconda\\lib\\site-packages\\cartopy\\data','downloaders': {('shapefiles','natural_earth'): <cartopy.io.shapereader.NEShpDownloader at 0x20ed4d18ca0>,('shapefiles','gshhs'): <cartopy.io.shapereader.GSHHSShpDownloader at 0x20ed4d26520>}}

其中data_dir便是cartopy读取数据的文件,我们进入这个网址:Natural Earth Download,下载对应的数据,我这里下的是physics的50m和110m.
在这里插入图片描述
将下载的数据解压到data_dir路径里,如下:
在这里插入图片描述
再运行代码

from cartopy.io import shapereader
# 获取文件路径信息
filename = shapereader.natural_earth()
print(filename)

使其读取natural_earth数据即可。
画好后如下:
在这里插入图片描述

绘制散点

一般的打点的我们使用’plot‘加上经纬度就好了,但对于有数据的点而言,我们为了更加直观,需要将点大小与数据对应,这里我们使用plt.scatter。
需要注意的是;由于绘图时我们是根据经纬度坐标来打点,而我们的地图本身是带有投影的,因此,直接使用经纬度坐标并不可行,需要将其转为地理坐标:
代码如下:

stlat=[69.4,78.874,73.428,72.256]
stlon=[18.6,11.923,81.481,103.038]
bc=[24,11,15,60]
f1_ax1.scatter(stlon,stlat,bc,c='r',alpha=0.5,transform=ccrs.Geodetic())#转为地理坐标
plt.show()

绘图如下:
在这里插入图片描述

图例添加

添加图例是个很麻烦的问题,因为我们是想要根据其大小绘制,此时我们只能根据条件,一个个的绘制。

g11=plt.scatter(11.923,78.874,s=5,c='r',marker='o',linewidths=2,transform=ccrs.Geodetic())
g2=plt.scatter(18.6,69.4,s=20,c='r',marker='o',linewidths=2,transform=ccrs.Geodetic())
g3=g1=plt.scatter(103.058,72.256,s=50,c='r',marker='o',linewidths=2,transform=ccrs.Geodetic())
plt.legend((g11,g2,g3),('10-20','20-30','>50'),loc='best',scatterpoints=1,markerscale=1)
plt.show(

绘图如下:
在这里插入图片描述
以上,完成,编程复建结束,继续睡觉(

http://www.zhongyajixie.com/news/64879.html

相关文章:

  • 日照营销型网站建设seo一般包括哪些内容
  • 网站建设的功能都需要有哪些方面什么是优化
  • 网站建设如何跑单子百度一下你就知道搜索
  • 查网站的建站系统bing搜索引擎国内版
  • 后海做网站公司网络服务包括
  • 网站设计排行榜广告投放推广平台
  • 17网站一起做网店白沟打开一个网站
  • 做网站语言最好拼多多代运营收费标准
  • 网站建设实训课百度的竞价排名是哪种方式
  • 做门户网站那个系统好国家卫健委最新疫情报告
  • 网站后台怎么做友情链接温州seo博客
  • 网站建设引言seo内部优化具体做什么
  • 海外网站加速哈尔滨网络优化推广公司
  • 常州做企业网站的公司网址大全是ie浏览器吗
  • 公司做网站买域名之后做什么百度网站优化工具
  • wordpress如何配置伪静态宁波网站seo哪家好
  • 学校网站建设设想“跨年”等关键词搜索达年内峰值
  • 深圳做网站 汉狮网络京津冀协同发展
  • 手机网站建设官网网站维护是什么意思
  • 盐城做网站哪家最好海外广告优化师
  • 广东装饰网站建设seo点击软件
  • 自己做微信优惠券需要网站百度一下百度搜索官网
  • 做公司网站有没有必要郑州seo招聘
  • 桓台网站设计软文写作的技巧
  • 奥派网站建设百度快照优化推广
  • wordpress 全站加密南阳本地网络推广优化公司
  • 电影订票网站怎么做东莞百度推广优化公司
  • 什么网站可以做动画日本搜索引擎
  • 镇江市网站建设重庆seo排名公司
  • 做网站优化的解封后中国死了多少人