Ответ 1
У Raphael нет дочерних/родительских отношений между элементами, поэтому вы установите для них одинаковое положение, например.
ec = paper.ellipse(190, 100, 30, 20);
paper.text(190, 100, "ellipse").attr({fill: '#ff0000'});
Итак, если вы хотите использовать эллипс с текстом, создайте свой собственный объект JavaScript, который обрабатывает позиционирование обоих.
или альтернативный способ состоит в группировке элементов через set
например.
var eltext = paper.set();
el = paper.ellipse(0, 0, 30, 20);
text = paper.text(0, 0, "ellipse").attr({fill: '#ff0000'})
eltext.push(el);
eltext.push(text);
eltext.translate(100,100)