Um dynamisch in jedem Quadranten des Graphen eine Art Etikett zu zentrieren, werden Sie eine Möglichkeit zur Berechnung der Koordinaten haben müssen. Natürlich bin ich mit Birt nicht wirklich vertraut und ich gehe davon aus, dass die roten Marker des Graphen variieren werden.
Wie dem auch sei, vorausgesetzt, dass Sie die Koordinaten erhalten können, können Sie eine Funktion schreiben, die dynamisch das Label auf der Grundlage einer Reihe von Parametern erzeugen würde:
function generateLabel(sContent, iXoffset, iYoffset) {
var eLabel = document.createElement('span');
eLabel.appendChild(document.createTextNode(sContent));
var eDivision = document.createElement('div');
eDivision.appendChild(eLabel);
eDivision.style.left = iXoffset + 'px';
eDivision.style.top = iYoffset + 'px';
// include other styles here...
return eDivision;
}
und dann von dort aus können Sie rufen Sie diese Funktion mit der Satz Etiketteninhalt und Offset-Koordinaten:
var eQuadrantOneLabel = generateLabel('Quadrant One', 10, 25);
// and so on...
Dann fügen nur das Element mit dem Behälter des Graphen (unter der Annahme, dass eine ist von id
hat, sagen wir,):
var eGraphContainer = document.getElementById('graph');
eGraphContainer.appendChild(eQuadrantOneLabel);
// and so on for each label...
Könnten Sie mich bitte spezifischer? Möchten Sie eine Beschriftung in jedem Quadranten hinzufügen, an der Kreuzung der Markierungen, unter/über der X-Achsenmarkierung, auf jeder Seite der Y-Achsenmarkierung oder vollständig außerhalb der Seite/unten/oben auf dem Diagramm? – Tom
Entschuldigung. Ich möchte ein Label in jedem Quadranten hinzufügen (wenn möglich zentriert) –