Legends for psvelo and geovectors in GMT 6

GMT version 6.1.1

I’m trying to plot psvelo and geovector plots using modern GMT syntax, with a legend for multiple distinct datasets:

gmt begin legend_mwe
    gmt psbasemap -R110/210/-40/40 -JM14c -Baf -BWSen
    gmt psvelo GSRMv2platemotion.dat -Se0.01/0.95 -W0.5p,dimgray -A5p+h0.5+gdimgray+e
    gmt psxy sws.dat -S=+jc -W2p,black
    # Legend for the plate motion magnitudes and the shear wave splitting delay times?
    gmt pslegend -Dx1c/1c+w4c -F <<EOF
# delay time of 2s is equivalent to length of 666
# 50 mm/yr is equivalent to 0.5
S 2p = 666 black 2p 2p 2s delay time
S 2p e 0.5 black 2p 2p 50mm/yr
gmt end show

Sample datasets with fake shear-wave splitting data are attached:GSRMv2platemotion.dat (4.1 KB) sws.dat (46 Bytes) .

I have tried various incantations for both pslegend and legend but I’m not getting what I want, which is a simple legend with two representative vector magnitudes. I think the e symbol is reserved for ellipses – are psvelo legends not available? I read elsewhere that someone was using a manual psvelo + pstext construct instead. However, the geovectors (=) are apprently supported according to my reading of the docs, but I couldn’t find any examples using them.

Any examples or hints for this case?


As a quick follow-up to this: are geographical units supported in the legend file at all? Any example of how to make a legend with symbols scaled the same as on a geographical map? Cheers.

Edit: actually, I just realised that this is a bad idea. The symbol scale will depend on its position on the map (in most projections) so there’s no way to make a legend that says “this is what that particular symbol size means”. I’ll move to something else instead of geovectors for this case.

You can always say “10 m/s at 45ºN” or something like that…