你可以在我的情节中为三角形的尖端着色吗?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了你可以在我的情节中为三角形的尖端着色吗?相关的知识,希望对你有一定的参考价值。

我正在特定地点绘制英国的风速和风向。我想知道的是,有没有办法为三角形的尖端着色,使风的方向更明显?

我绘制此代码的代码是:

payload_user={'maddison.newman@example.com': {'lat': '51.45', 'lon': '-2.59'},'mandy.larson@example.com': {'lat': '52.06', 'lon': '-2.82'}}
m.plot(y=float(payload_user[email_user]['lat']),x=float(payload_user[email_user]['lon']),marker=(3,0,wind_direction_deg),color = col, markersize=7 )
                    plt.title("Wind speed and Direction in the UK for specific users")
                    plt.xlabel('Longitude')
                    plt.ylabel("Latitude")

风速和风向的英国地图:

答案

我不知道有什么比标记的其他部分以不同方式着色部分标记的合理简便方法。然而,为了显示方向,我可以想象使用非等边但等腰三角形是有道理的。

enter image description here

实现这种三角形的一种方法是使用marker=verts表示法,其中verts是要用作标记的多边形的顶点。

import numpy as np
import matplotlib.pyplot as plt

def get_arrow(angle):
    a = np.deg2rad(angle)
    ar = np.array([[-.25,-.5],[.25,-.5],[0,.5],[-.25,-.5]]).T
    rot = np.array([[np.cos(a),np.sin(a)],[-np.sin(a),np.cos(a)]])
    return np.dot(rot,ar).T

for i, angle in enumerate([0,45,60,-36]):
    plt.plot(i/10.,0.6,marker=get_arrow(angle), ms=30)

plt.show()

enter image description here

以上是关于你可以在我的情节中为三角形的尖端着色吗?的主要内容,如果未能解决你的问题,请参考以下文章

为啥片段着色器没有附加?

为啥保守光栅化无法为某些三角形调用片段着色器?

计算片段着色器内平面的法线

片段着色器不会在 OpenGL GLSL 中创建像光一样的渐变

在片段着色器中输出数据时切换布局位置

iOS 7 UIButtonBarItem 图像不着色