Parallelogram
From JSXGraph Wiki
The underlying JavaScript code
JXG.Options.label.autoPosition = true;
JXG.Options.text.useMathJax = true;
JXG.Options.text.fontSize = 20;
var board = JXG.JSXGraph.initBoard("jxgbox", {boundingbox: [-5,5,5,-5], showCopyright:false, showNavigation:false});
var p = board.create('point', [-3,-3], {name:'\\(p\\)'});
var q = board.create('point', [2, -3], {name:'\\(q\\)'});
var s = board.create('point', [-1, 1], {name:'\\(s\\)'});
var r = board.create('point', [4, 1], {name:'\\(r\\)'});
var pq = board.create('arrow', [p, q], {withLabel: true, name:'\\(\\vec{pq}\\)', label:{position: 'top', parse: false}, lastArrow: {type: 4, size: 8}});
var sr = board.create('arrow', [s, r], {withLabel: true, name:'\\(\\vec{sr}\\)', label:{position: 'top', parse: false}, lastArrow: {type: 4, size: 8}});
var ps = board.create('arrow', [p, s], {withLabel: true, name:'\\(\\vec{ps}\\)', label:{position: 'top'}, lastArrow: {type: 4, size: 8}});
var qr = board.create('arrow', [q, r], {withLabel: true, name:'\\(\\vec{qr}\\)', label:{position: 'top'}, lastArrow: {type: 4, size: 8}});
var pr = board.create('arrow', [p, r], {});