所以我成功地在地图上绘制了饼图作为标记轴向散射,但我遇到了一些问题,一些楔子“爆炸”出了饼图。我似乎在我的代码中找不到原因,也无法在网上找到解释。这段代码基于示例here,一位同事也使用了这个示例并生成了普通的、统一的饼图。我们之间找不到问题,也没有出错。在

代码:import numpy as np

import math

import matplotlib

import matplotlib.pyplot as plt

from mpl_toolkits.basemap import Basemap, cm

australia_data = np.zeros((24,12))

colors = ['red','yellow','blue','mediumorchid']

#pie chart locations

xlon=[146.7,166,101.6,137.4,145.1,113.6,169.7,113.3,176.0,139.6,148.9,124.2,132.4,142.0,129.6,148.0,116.5,142.8,141.7,128.0,113.6,120.7,128.3,148.6]

ylat=[-42.2,-19.2,-0.5,-3.5,-34.4,-8.7,-45.1,-1.0,-38.6,-26.7,-29.1,-20.0,-14.4,-18.9,-31.3,-6.6,-23.8,-3.4,-7.5,-25.6,3.8,-3.1,-1.9,-23.2]

#function to draw pie charts on map

def draw_pie(ax,X=0, Y=0, size = 1500):

xy = []

start = 0.17

ratios=[1/12.]*12

for ratio in ratios:

x = [0] + np.cos(np.linspace(2*math.pi*start,2*math.pi*(start+ratio))).tolist() #30

y = [0] + np.sin(np.linspace(2*math.pi*start,2*math.pi*(start+ratio))).tolist() #30

xy1=(zip(x,y))

xy.append(xy1)

start -= ratio

piecolors = []

for lt in range(12):

c = australia_data[b,lt]-1

c=int(c)

piecolors.append(colors[c])

for i, xyi in enumerate(xy):

ax.scatter([X],[Y] , marker=(xyi,0), s=size, facecolor=piecolors[i],linewidth=0.5,alpha=.7)

australia_data[:,11] = 1

australia_data[:,4] = 3

australia_data[:,1] = 2

fig = plt.figure()

ax = fig.add_axes([.05,.01,.79,.95])

x1 = 90 #left

x2 = 180 #right

y1 = -50 #bottom

y2 = 10 #top

#Create the map

m = Basemap(resolution='l',projection='merc', llcrnrlat=y1,urcrnrlat=y2,llcrnrlon=x1,urcrnrlon=x2,lat_ts=0) #,lat_ts=(x1+x2)/2

m.drawcoastlines()

#plots pie charts:

for b in range(24):

X,Y=m(xlon[b],ylat[b])

draw_pie(ax,X, Y,size=400)

plt.savefig('australia_pies.png',dpi=400)

有什么想法知道为什么会发生这种情况(以及如何解决它!)不胜感激!

编辑:这似乎是一个饼图中楔子数量的问题-减少到6将导致均匀的饼图,但7+会导致一些楔子“爆炸”。在

python绘制彩色地震剖面_在地图上绘制饼图时“爆炸”楔形图(Python,matplotlib)...相关推荐

  1. python绘制彩色地震剖面_用matplotlib绘制地震摆动轨迹

    我正在尝试使用matplotlib重新创建上面的打印样式. 原始数据存储在2D numpy数组中,其中快轴是时间. 画线很容易.我在努力让阴影区域更有效. 我目前的尝试是这样的:import nump ...

  2. java echarts 散点图,echarts在地图上绘制散点图(任意点)

    项目需求:在省份地图上绘制散点图,散点位置不一定是哪个城市或哪个区县,即任意点 通过查询官网文档,找到一个与需求类似的Demo:https://www.echartsjs.com/gallery/ed ...

  3. 如何在百度地图上绘制建筑楼块(矢量面)数据并导出为图片

    万能地图下载器的矢量面绘制功能可以在百度地图上绘制行政边界.建筑楼块.街区.居民地.植被.水系和湖泊等矢量面状数据. 这里我们以绘制建筑为例,通过以下几个步骤说明如何在地图中绘制建筑楼块,但请确保你的 ...

  4. 地图上绘制任意角度的椭圆_地图上的总椭圆

    地图上绘制任意角度的椭圆 或者,如何选择下班后去海滩的最佳方式 (Or, how to choose the best way to walk to the beach after work) It ...

  5. python在地图上画路线_python在openstreetmap地图上绘制路线图的实现

    python在openstreetmap地图上绘制路线图的实现 发布时间:2020-08-28 23:14:52 来源:脚本之家 阅读:111 作者:AAAAAAAKing 利用python进行经纬度 ...

  6. 地图上分成一块一块区域 高德地图_在谷歌地图上绘制行政区域轮廓【结合高德地图的API】...

    实现思路: 1.利用高德地图行政区域API获得坐标列表 2.将坐标列表绘制在谷歌地图上[因为高德地图和国内的谷歌地图都是采用GCJ02坐标系,所有误差很小,可以不进行坐标误差转换] 注意点: 1.用百 ...

  7. Matlab运用mapping包在地图上绘制散点图(热力图)

    Matlab运用mapping包在地图上绘制散点图(热力图) 一.前言 Mapping Toolbox是Matlab提供的,一整套包含许多函数跟图形用户界面的工具箱:它可以帮助用户分析几何空间方面的数 ...

  8. plotly系列| 使用plotly在地图上绘制散点图和密度图

    目录 Plotly简介 在地图上制作散点图和密度图 1 . 在python中使用pip命令安装 2 .导入包 3 .读取文件 4 . 在地图上绘制散点图 5 . 绘制密度图,其属性与绘制散点图相似 关 ...

  9. Python 给定的经纬度标注在地图上的实现方法

    今天小编就为大家分享一篇Python 给定的经纬度标注在地图上的实现方法,具有很好的参考价值,希望对大家有所帮助.一起跟随小编过来看看吧 博主最近发现了python中一个好玩的包叫basemap,使用 ...

最新文章

  1. Go 学习笔记(18)— 函数(04)[闭包定义、闭包修改变量、闭包记忆效应、闭包实现生成器、闭包复制原对象指针]
  2. LeetCode 144. Binary Tree Preorder Traversal--二叉树前序遍历--反向压栈--迭代-栈,递归--C++,Python解法
  3. JAVA线程池之双端队列与工作密取workstealingpool java7新加的一种线程池
  4. 新概念英语(1-47)A cup of coffee
  5. 用php获取本周,上周,本月,上月,本季度日期的代码
  6. 工具栏,底部导航栏,可扩展列表视图
  7. MVC开发中的常见错误-04-“System.NullReferenceException”类型的异常在 BBFJ.OA.WebApp.dll 中发生,但未在用户代码中进行处理...
  8. 在容器上构建持续部署及最佳实践初探
  9. Atitit 发帖机实现(4 )- usbQBM1601 gui操作标准化规范与解决方案attilax总结
  10. php引用()详解及注意事项
  11. nw.js---创建一个点击菜单
  12. 最新手机号段归属地数据库 (2021年4月版) 473101行
  13. CS224N WINTER 2022(二)反向传播、神经网络、依存分析(附Assignment2答案)
  14. Unity激光雷达仿真调研(svl)
  15. 转:echarts图表x,y轴的设置
  16. 教师资格证面试缴费找不到服务器,2016年教师资格证考试报名网上缴费常见问题...
  17. TK1刷机以及简单配置
  18. The following classes could not be found - EditText (Change to android.widget.EditText, Fix Build Pa
  19. 《大话处理器》相关主题汇总
  20. 三方接口签名验签简易设计与实现

热门文章

  1. 由〈非你莫属〉想到与客户的沟通
  2. Flash与数学:圆(2)
  3. 解决RichEdit line insertion error的方法(转载)
  4. keepalived+lvs+nginx高可用
  5. 51 Nod 阶乘后面0的数量
  6. amazeui学习笔记--css(布局相关2)--等分网格 AVG Grid
  7. python第六篇:Python复制超大文件、复制二进制文件
  8. web网页上面调用qq
  9. MFC获取文件夹路径并得到该字符串
  10. openfeign远程调用不起作用解决_使用Spring Boot的spring.factories进行注入---SpringCloud Alibaba_若依微服务框架改造---工作笔记007