Я создал отчет BIRT с диаграммой, которая получает данные из базы данных оракула. Я правильно сделал диаграмму. Теперь мне нужно добавить 4-5 маркеров в диаграмму. Значения для маркеров, которые могут быть изменены, также сохраняются в базе данных.Как добавить динамический маркер в таблицу BIRT
Я попытался скрипты, упомянутые в этой статье, с некоторыми модификациями http://blogs.actuate.com/birt-chart-scripting-dynamic-markers/
function beforeGeneration(chart, icsc)
{
importPackage(Packages.org.eclipse.birt.chart.model.component.impl);
importPackage(Packages.org.eclipse.birt.chart.model.data.impl);
importPackage(Packages.org.eclipse.birt.chart.model.attribute);
importPackage(Packages.org.eclipse.birt.chart.model.attribute.impl);
var chart = icsc.getChartInstance();
var yAxis = chart.getBaseAxes()[0];
var min_value = icsc.getExternalContext().getScriptable().getPersistentGlobalVariable("min_val");
var ok_value = icsc.getExternalContext().getScriptable().getPersistentGlobalVariable("ok_val");
var great_value = icsc.getExternalContext().getScriptable().getPersistentGlobalVariable("great_val");
min_ml = MarkerLineImpl.create(yAxis, NumberDataElementImpl.create(min_value));
min_ml.getLabel().getCaption().setValue("Minimum");
min_ml.getLineAttributes().getColor().set(255,0,0);
}
Он генерирует маркер, но в неправильном месте. Похоже, что он не получает должным образом маркировку в соответствии со значениями оси x.
Что может быть проблема в этом сценарии?
http://developer.actuate.com/community/forum/index.php?/topic/36669-хау к надстройке с динамическим маркером-к-а-BIRT-чарт / – direndd