繁体   English   中英

如何在 Matplotlib 中创建带旋转的单箭头标记?

[英]How to create single-headed arrow marker with rotation in Matplotlib?

我想要一个单向箭头 (<--) 作为旋转标记。 我应该能够在 (x,y) 处以给定角度生成一个旋转的单向箭头。 使用下面的代码,我可以旋转标准标记。 但是,我不知道如何对单向箭头 (<--) 做同样的事情。 我想使用此标记作为 2D 点在空间中的定向方式的可视化表示。

matplotlib 版本:2.2.5(这个不能更新)

在此处输入图像描述

    import matplotlib as mpl
    import matplotlib.pyplot as plt

    for i, val in enumerate([0, 30, 60, 90]):
        rotated_marker = mpl.markers.MarkerStyle(marker="^")
        rotated_marker._transform = rotated_marker.get_transform().rotate_deg(val)
        plt.scatter((i), (0), marker=rotated_marker)

    plt.show()

根据此处的答案: Down arrow symbol in matplotlib ,可以使用 unicode 指定符号。检查以下代码:

import matplotlib as mpl
import matplotlib.pyplot as plt

# https://en.wikipedia.org/wiki/Template:Unicode_chart_Arrows
arrow = u'$\u2191$'

for i, val in enumerate([0,90,180,270,360]):
    rotated_marker = mpl.markers.MarkerStyle(marker=arrow)
    rotated_marker._transform = rotated_marker.get_transform().rotate_deg(val)
    plt.scatter((i), (0), marker=rotated_marker, s=150, facecolors='none', edgecolors='b')

plt.show()

在此处输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM