Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Archived » BIRT » beforeDrawAxisLabel event for setting X-Axis label
beforeDrawAxisLabel event for setting X-Axis label [message #367726] Sun, 05 April 2009 20:43 Go to next message
Raigo Mising name is currently offline Raigo Mising nameFriend
Messages: 3
Registered: July 2009
Junior Member
Line graph. X axis has dates, with each date a value for Y graph. Graph is
drawn for 5 year period. On X axis label is needed only one Year number
per year (not needed titles for each date).
For example graph is drawn from data january 2001 - december 2005. then X
axes labels would be: 2001, 2002, 2003, 2004, 2005. Label is positioned in
center of that period.

How using beforeDrawAxisLabel event set the label value?

logic is following

if (date = 31 july){
set label text = year part of that date
}
else {
leave label empty
};
Re: beforeDrawAxisLabel event for setting X-Axis label [message #367739 is a reply to message #367726] Mon, 06 April 2009 16:11 Go to previous messageGo to next message
Eclipse UserFriend
Originally posted by: jasonweathersby.alltel.net

Raigo,

There are a lot of ways to do this, but try:

function beforeDrawAxisLabel( axis, label, context )
{
importPackage(Packages.org.eclipse.birt.chart.model.attribut e);
importPackage(Packages.java.text);
//LINEAR_LITERAL
//LOGARITHMIC_LITERAL
//TEXT_LITERAL
//DATE_TIME_LITERAL
if (axis.getType() == AxisType.DATE_TIME_LITERAL)
{
value = label.getCaption().getValue();
importPackage( Packages.java.io );

var dtf = new SimpleDateFormat("yy");
var dtf2 = new SimpleDateFormat("MM/dd");


var dt = new Date(value);
var fn1 = dtf2.format(dt);

if( fn1.toString() == "07/14" ){
var fn2 = dtf.format(dt);
label.getCaption().setValue(fn2);
}else{
label.getCaption().setValue("");
}
}
}

Jason

Raigo wrote:
> Line graph. X axis has dates, with each date a value for Y graph. Graph
> is drawn for 5 year period. On X axis label is needed only one Year
> number per year (not needed titles for each date). For example graph is
> drawn from data january 2001 - december 2005. then X axes labels would
> be: 2001, 2002, 2003, 2004, 2005. Label is positioned in center of that
> period.
> How using beforeDrawAxisLabel event set the label value?
> logic is following
> if (date = 31 july){ set label text = year part of that date } else {
> leave label empty };
Re: beforeDrawAxisLabel event for setting X-Axis label [message #1725322 is a reply to message #367726] Wed, 02 March 2016 14:03 Go to previous message
olivier loquin is currently offline olivier loquinFriend
Messages: 1
Registered: March 2016
Junior Member
Hi i would like to change X axis label with function below but that don't work

is anybody to help me
thanks

function beforeDrawAxisLabel( axis, label, icsc )
{

var value1 = axis.getLabel().getCaption().getValue();

if (value1 == 1){ axis.getLabel().getCaption().setValue("ADS");}

else if (value1 == 7){ axis.getLabel().getCaption().setValue("DP");}

else if (value1 == 15){ axis.getLabel().getCaption().setValue("CU");}


}
Previous Topic:Where's the fetch method?
Next Topic:how to repeat a table on every page
Goto Forum:
  


Current Time: Fri Apr 26 10:00:16 GMT 2024

Powered by FUDForum. Page generated in 0.04719 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top