Create isosceles triangles

I want to create a plot which shows the wind speed with the wind direction at each point, something like this:

But I have hit a roadblock when creating the triangles which represent the wind direction. The triangle in Bokeh is equilateral and I want the triangles to be isosceles, so it clearly show the direction.

Is there a way to do this?

Can see there is a non-glyph method described here: python - Is it possible to easily modify/create a custom scatter marker for bokeh plots? - Stack Overflow. But I feel like there should be a more elegant solution with glyphs.

This thread might be helpful… Using bokeh's Arrow to draw VectorField? · Issue #3485 · holoviz/holoviews · GitHub … using bokeh’s “Arrow” annotation you might be able to cook something up.

1 Like

A few comments:

  • In the upcoming 2.3 release, arrows will be “vectorizable” but ArrowHeads are not independently drawable, they only drawable as part of a full Arrow (though you could make the arrow shaft be invisible or zero-length)

  • Another option is to use the patches glyph to draw the triangles. You will just need to supply all the actual coordinates explicitly

2 Likes