python画风向杆_matplotlib quiver 画风速风向

一个箭头的组成

quiver几个参数的理解

quiver([X, Y], U, V, [C], **kw),其中kw可供选择的参数有:

units:默认值是width, width/heigth:箭头的宽度是x或者y轴的总长,没错,是总长; dots/inches:箭头的宽度是设置的dpi或者设置的英寸大小,这个影响了width参数,比如说画布大小设为plt.figure(figsize=(144, 72), dpi=10),这个画布占1440*720px,如果quiver设置units="dots",width=5,代表以10像素为基础单位,5倍的宽度也就是画一个箭头它的宽度占50px,那么数据就需要抽样画了,不然会糊在一起;

x/y/xy:以x,y,或者xy的平方根为基础的宽度,如果x轴或者y轴坐标设置步长为1,和画布像素大小一致,这样一个像素对应一个x的整数坐标值,那么就可以控制箭头杆的宽度了,箭头杆的基础长度就是根号2px;

width:float型,用来控制箭头杆的宽度,我只清楚units=dots时宽度的理解,但是对于units=x/y/xy时宽度到底指的是我暂时是按照上面的理解;

angle:uv/xy,uv箭头的纵横比(axis aspect ratio)为1,所以若U==V,则绘图上箭头的方向与水平轴逆时针呈45度(正向右);xy箭头从(x,y)指向(x + u,y + v),例如,使用它来绘制渐变场(gradient field)

headwidth:float型,默认3,用来控制箭头三角形底边的半宽,值指的是杆宽的倍数;

headlength: float型,默认5,用来控制箭头斜边的长度,值指的是杆宽的倍数,比如4.5指的是杆宽的4.5倍;

scale:float型,默认为None,用来控制杆身的长度,值越小,杆身越长,如果为None,则使用matplotlib自动缩放算法,箭头长度单scale_units参数指定

scale_units:如果该值设置为width/heigth,则scale应该设为0.000x的范围差不多才是想要的结果,如果设置为inches,则和你的dpi以及scale相关,对于plt.figure(figsize=(144, 72),dpi=10) scale=1,scale_units="inches"和scale=0.1,scale_units="x/xy/不写"的画出来的结果是一样的;

pivot:tail/mid/middle/tip,默认tail,指的是箭头中心,其实就是从哪里画

样例图

全部代码参考# _*_coding:utf-8_*_

import matplotlib.pyplot as plt

from PIL import I

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值