Dynamic Column Chart
Hi,
we are trying to develope a dynamic column chart .but i faild to achived this can any one know how to create a dynamic column chart .some sample code
i am providing.
var arrCol:ArrayCollection=new ArrayCollection();
var ob:Object;
for(var l:int=0;l<4;l++)
ob=new Object();
if(l==0)
ob["month"]="January"
ob['category']="diesel Expense";
}else if(l==1)
ob["month"]="Feb"
ob['category']="stationary Expense";
ob["category_head"]="Generator";
else if(l==2)
ob["month"]="March"
ob['category']="Light Bill Expense";
ob["category_head"]="Generator";
else if(l==3)
ob["month"]="april"
ob['category']="security Expense";
ob["category_head"]="Generator";
arrCol.addItem(ob);
//*********** stackedColumnChart is my columnchart object
stackedColumnChart.dataProvider=arrCol;
xAxis.categoryField="month"
var columnSet:ColumnSet = new ColumnSet();
columnSet.type = "clustered";
var columnSeries:ColumnSeries;
var seriesArray:Array = new Array();
for(var i:int = 0; i < arrCol1.length; i++){
columnSeries = new ColumnSeries();
columnSeries.yField = arrCol1[i].category ;
columnSeries.displayName = arrCol1[i].category;
seriesArray.push(columnSeries);
// Alert.show("ff"+ arrCol[i].category);
} columnSet.series = seriesArray;
stackedColumnChart.series = [columnSet];
this code is showing legend properly but does not create any column chart.
please help it urgent......
thanks
Which connection you are using?
IF quite difficult if you are working under static data.
Similar Messages
-
Help Creating Dynamic Stacked Column Chart with Multiple Criteria
Hi all. Im new here and hoping you can help. I have a dashboard Im trying to rebuild from scratch (our computer had a meltdown and we lost all our files). I did not build the dashboard initially so Im trying to recreate it from the flash file we were able to recover. I have come across a chart that I just cannot figure out how to do. I can figure out how to write an array in the Excel sheet that pulls the data into a table the way I need it to be but found out after I wrote that that Xcelcius doesn't support arrays so all my data disappears when I go into preview mode (which is especially frustrating since I can see the chart working fine in design mode). Anyway this is what the data table looks like
Month Year Company Positive # Negative # Neutral # Positive % Negative % Neutral %
October 2011 CompanyA 1234 1234 1234 10 10 10
October 2011 CompanyB 1234 1234 1234 10 10 10
October 2011 CompanyC 1234 1234 1234 10 10 10
October 2011 CompanyD 1234 1234 1234 10 10 10
November 2011 CompanyA 1234 1234 1234 10 10 10
November 2011 CompanyB 1234 1234 1234 10 10 10
November 2011 CompanyC 1234 1234 1234 10 10 10
November 2011 CompanyD 1234 1234 1234 10 10 10
December 2011 CompanyA 1234 1234 1234 10 10 10
December 2011 CompanyB 1234 1234 1234 10 10 10
December 2011 CompanyC 1234 1234 1234 10 10 10
December 2011 CompanyD 1234 1234 1234 10 10 10
The original chart was built so that you would choose the month from a combo box and then the company names would show up along the X axis with their % amounts shown in the stacked column. I know how to make a combo box work and I know how to make a stacked column chart work with static data. I cannot for the life of me figure out how to get it to work so that when you choose the month from the combo box it filters the data. I've tried filtered rows but I'm just missing some information that makes it work and I can't figure out what that information is. It has to be able to get the month/year combo from the combo box and then go to the table, filter it by month and year and then create a multi-row table of data with just the company and the percent values. Any help would be greatly appreciated!Which connection you are using?
IF quite difficult if you are working under static data. -
I have a simple column chart grouping on 1 value on the category axis. For simplicity's sake, we are plotting $ amounts grouping by Month on the category axis. I right click on the data series and choose "Add calculated series...". I choose moving average. I want to move the average over at least 2 periods.
When I run the report, I get the error "Formula error - there are not enough data points for the period". The way the report is, I never have a guaranteed number of categories (there could be one or there could be 5). When there is 2 or more, the chart renders fine, however, when there is only 1 value, instead of suppressing the moving average line, I get that error and the chart shows nothing.
I don't think this is entirely acceptable for our end users. At a minimum, I would think the moving average line would be suppressed instead of hiding the entire chart. Does anyone know of any workarounds or do I have to enter another ms. connect bug/design consideration.
Thank you,
DanI was having the same error while trying to plot a moving average across 7 days. The work around I found was rather simple.
If you right click your report in the solution explorer and select "View Code" it will give you the underlying XML of the report. Find the entry for the value of your calculated series and enter a formula to dynamically create your periods.
<ChartFormulaParameter Name="Period">
<Value>=IIf(Count(Fields!Calls.Value) >= 7 ,7, (Count(Fields!Calls.Value)))</Value>
</ChartFormulaParameter>
What I'm doing here is getting the row count of records returned in the chart. If the returned rows are greater than or equal to 7 (The amount of days I want the average) it will set the points to 7. If not, it will set the number to the amount of returned rows. So far this has worked great. I'm probably going to add more code to handle no records returned although in my case that shouldn't happen but, you never know.
A side note:
If you open the calculated series properties in the designer, you will notice the number of periods is set to "0". If you change this it will overwrite your custom formula in the XML. -
I created a line chart with the following sql statement:
select null link, periode_jaar, sum(totaal) total from V_KPL_VZ_OWB@rapportage_dwhtest
where periode_jaar = (Select max(periode_jaar) from V_KPL_VZ_OWB@rapportage_dwhtest)
group by periode_jaar
order by periode_jaar
In the legend of the chart the line is named total. I would like have it named for example: Total 2009
So how i create the dynamic column? Any ideas? Tnx in advnacedtnx for helping, i posted my xml code below where to put the tag: <format>{%Name} ({%Value})</format>
i assume i have to replace %Name with my sirie name and the %Value with the name i wanted?
Is it possible to replace %Value with an item like :p1_year
<?xml version = "1.0" encoding="utf-8" standalone = "yes"?>
<root>
<type>
<chart type="2DLine">
<animation enabled="yes" appearance="size" speed="10" />
<hints auto_size="yes">
<text><![CDATA[{NAME}, {VALUE}]]></text>
<font type="Verdana" size="10" color="0x000000" />
</hints>
<names show="yes" width="150" placement="chart" position="bottom" >
<font type="Verdana" size="10" color="0x000000" />
</names>
<values show="no" prefix="" postfix="%" decimal_separator="," decimal_places="0" />
<arguments show="no" />
<line_chart left_space="5" right_space="5">
<block_names enabled="no" />
</line_chart>
</chart>
<workspace>
<background enabled="yes" type="solid" color="0xffffff" alpha="0" />
<base_area enabled="no" />
<chart_area enabled="yes" x="80" y="50" width="380" height="280" deep="0">
<background enabled="no"/>
<border enabled="yes" size="1"/>
</chart_area>
<x_axis name="Jaar" smart="yes" position="center_bottom" >
<font type="Verdana" size="14" color="0x000000" bold="no" align="center" />
</x_axis>
<y_axis name="%" smart="yes" position="left_center" >
<font type="Verdana" size="14" color="0x000000" bold="no" align="center" />
</y_axis>
<grid>
<values />
</grid>
</workspace>
<legend enabled="yes" x="480" y="50">
<font type="Verdana" size="10" color="0x000000" />
</names>
<values enabled="YES"/>
<scroller enabled="no"/>
<header enabled="no"/>
<background alpha="0"/>
</legend>
</type>
#DATA#
</root> -
HI,
I'm extending my dashboard to display printer information.
From the sample data below I want to display, each printers
job total count for each quarter.
Bottom access should show Q2-07,Q3-07-Q1-08 vertical axis
should show integers.
From the table below I want to display in each quarter a
column bar for each printer showing total jobs, and another column
in same quarter showing page total for each printer
AEc2880->JOBCOUNT:AEc2880->PAGECOUNT:CreativeFirey240->JOBCOUNT:CreativeFirey240->PAGECOUN T:
I can either get the grid to show quarters but only on
printer, or printers but only one quarter.
<ColumnChart id="colChart" width="100%" height="100%"
showDataTips="true" visible="true" >
<horizontalAxis>
<CategoryAxis categoryField="Quarter" />
</horizontalAxis>
<series>
<ColumnSeries yField="JOBCOUNT" xField="Quarter" />
<ColumnSeries yField="JOBCOUNT" xField="Quarter" />
<ColumnSeries yField="JOBCOUNT" xField="Quarter" />
</series>
</ColumnChart>
+------------------+----------+-----------+---------+-------------------+
| PrinterName | JOBCOUNT | PAGECOUNT | Quarter |
printStartQuarter |
+------------------+----------+-----------+---------+-------------------+
| AEc2880 | 748 | 1034 | Q2-07 | 2007-04-01 |
| CreativeFirey240 | 2404 | 5454 | Q2-07 | 2007-04-01 |
| AEc2880 | 2248 | 6552 | Q3-07 | 2007-07-01 |
| AEiR5055 | 979 | 2845 | Q3-07 | 2007-07-01 |
| CreativeFirey240 | 5017 | 12321 | Q3-07 | 2007-07-01 |
| AEc2880 | 1439 | 6256 | Q4-07 | 2007-10-01 |
| AEiR5055 | 1753 | 5587 | Q4-07 | 2007-10-01 |
| CreativeFirey240 | 4731 | 9990 | Q4-07 | 2007-10-01 |
| AEc2880 | 1817 | 2707 | Q1-08 | 2008-01-01 |
| AEiR5055 | 1158 | 2817 | Q1-08 | 2008-01-01 |
| CreativeFirey240 | 3822 | 9665 | Q1-08 | 2008-01-01 |
+------------------+----------+-----------+---------+-------------------+
Thanks in advance
DeanSorry this losses formating:
I'm posting this hoping that it will point others in a
direction right or wrong. Also hoping to get some feed back on
improvements or even 'dude what where you smoking this code is
awful'.
Test Data I'm playing with from mysql.:
+------------------+----------+-----------+---------+-------------------+
| PrinterName | JOBCOUNT | PAGECOUNT | Quarter |
printStartQuarter |
+------------------+----------+-----------+---------+-------------------+
| AEc2880 | 748 | 1034 | Q2-07 | 2007-04-01 |
| CreativeFirey240 | 2404 | 5454 | Q2-07 | 2007-04-01 |
| AEc2880 | 2248 | 6552 | Q3-07 | 2007-07-01 |
| AEiR5055 | 979 | 2845 | Q3-07 | 2007-07-01 |
| CreativeFirey240 | 5017 | 12321 | Q3-07 | 2007-07-01 |
| AEc2880 | 1439 | 6256 | Q4-07 | 2007-10-01 |
| AEiR5055 | 1753 | 5587 | Q4-07 | 2007-10-01 |
| CreativeFirey240 | 4731 | 9990 | Q4-07 | 2007-10-01 |
| AEc2880 | 1817 | 2707 | Q1-08 | 2008-01-01 |
| AEiR5055 | 1158 | 2817 | Q1-08 | 2008-01-01 |
| CreativeFirey240 | 3822 | 9665 | Q1-08 | 2008-01-01 |
+------------------+----------+-----------+---------+-------------------+
Each row is a printerName, JobCount, PageCount,Quarter,
printStartQuarter (first day of each quarter)
Requirements:
I need to display summaries in a column chart of Queue
(printer) usage. For each Queue summary I need to show total jobs
sent (printed) and total pages sent (printed) for a given period.
The one I'm dealing with here is quarterly view. With the
sample data above I want to show for each quarter total job, total
pages for AEc2880,CreativeFirey240 and AEIR5055
If I use the data has is, I only get one queue per quarter. I
need to have each queue its own column, twice. One for total jobs
and total pages. Then one row per quarter for it to work.
AEc2880_TJ - AEc2880_TP - CreativeFirey240_TJ -
CreativeFirey240_TP - AEIR5055_TJ - AEIR5055_TJ - Quater -
printStartQuarter.
Now for the big issue, the queues are dynamic. The test data
is from 3 queues only. There could be 1 to n number of queues and
not all quarters will be the same as queues get added and deleted.
This is how I approached this in AS Flex 2, I have flex 3 but
not installed yet, I can not find much info on the new grouping
classes to see if they will help.
Most examples are with the advanced data grid. There is also
very little information on charting bar the basics around.
My data comes in from PHP middle ware as JSON.
First think we need to do is pass the de-serialized array
into a function that finds all the unique queue names.
[Bindable]
private var groupQueueEvent:ArrayCollection;
private function setUpHandler(event:ResultEvent):void{
//get the raw JSON data and cast to String
var rawData:String = String(event.result);
//decode the data to ActionScript using the JSON API
//in this case, the JSON data is a serialize Array of
Objects.
var arr:Array = (JSON.decode(rawData) as Array);
//Send array for processing.
groupPrinters(arr);
//function that takes quartly events and finds unique queues
private function
populateComboYearArray(eventsArray:Array):Array {
var queueArrayHashMap : Object = new Object(); //create hass
array, used to make sure array unique
var queueArray : Array = new Array; //create arry to hold
queues
//now run through each row of passed data looking for queue
names
for (var i:int = 0; i < eventsArray.length; i++)
//check to see if this
queue is all ready in hash.
if (queueArrayHashMap[eventsArray .PrinterName] ==
undefined){
//it not in hash so add it
queueArrayHashMap[eventsArray
.PrinterName] = new Object();
// now add the queue array
queueArray.push(eventsArray .PrinterName);
return queueArray; //send back final array
private function groupPrinters(data:Array):void {
//create array to hold unique names
var printerNames:Array = new Array();
//process data and get unique queue names back
printerNames = populateComboYearArray(data);
var printGroup:Array = new Array;//hold the final array
var tempRowArray:Object;//used to build each row of new data
var pgCountColumnName:String;//used to build queue names for
page count
var jobCountColumnName:String;/used to build queue names for
job count
for (var printRow:int = 0; printRow < data.length; ) {
//run through each row of data
tempRowArray = new Array; //create a new row each time
// we will always want the Quarter and printStartQaurter in
every row so add now
tempRowArray.Quarter = data[printRow].Quarter;
tempRowArray.printStartQuarter =
data[printRow].printStartQuarter;
// now for the tricky bit, we need to process each queue
name
for (var i:int = 0; i < printerNames.length; i++) {
// we need to see if we have a queue name match not all
quarters will
// have the same queue names
if (printerNames
.PrinterName == data[printRow].PrinterName) {
//if match found add to our row
//make dynamic column name would like to use queue name but
may be tainted
pgCountColumnName = "column" + String(i) + "pgcount";
jobCountColumnName = "column" + String(i) + "jbcount";
now create the columns with the names and add the data to
them
tempRowArray[pgCountColumnName] = data[printRow].PAGECOUNT;
tempRowArray[jobCountColumnName] = data[printRow].JOBCOUNT;
// we found a match so move along in outer loop
printRow++;
// we didn't find a match don't advance outer loop
// we checked all the queue names advanced outer loop where
needed,
// next time trough we should be in new quarter
printGroup.push(tempRowArray);// push temporary row to our
array
//assign are data to an array collection
groupQueueEvent = new ArrayCollection(printGroup);
//assign data to test grid for checking
detailedPrintReport.dataProvider = groupQueueEvent;
//assign data to chart.
colChart.dataProvider = groupQueueEvent;
//now make up the dynamic series
//PLEASE NOTE this code does not work yet still playing with
it
// testing purpose hard coded in mxml
var dynamicColumnSeries:ColumnSeries = new ColumnSeries;
colChart.series = [dynamicColumnSeries];
for ( i = 0; i < printerNames.length; i++) {
pgCountColumnName = "column" + String(i) + "pgcount";
jobCountColumnName = "column" + String(i) + "jbcount";
dynamicColumnSeries = new ColumnSeries;
dynamicColumnSeries.yField = 'jobCountColumnName;
dynamicColumnSeries.xField="Quarter";
dynamicColumnSeries.displayName =
printerNames.PrinterName;
colChart.series.push(dynamicColumnSeries);
dynamicColumnSeries = new ColumnSeries;
dynamicColumnSeries.yField = pgCountColumnName;
dynamicColumnSeries.displayName = printerNames
.PrinterName;
colChart.series.push(dynamicColumnSeries);
<ColumnChart id="colChart" width="100%" height="100%"
showDataTips="true" visible="true" >
<horizontalAxis>
<CategoryAxis categoryField="Quarter" title="Quartly"
labelFunction="defineLabel"/>
</horizontalAxis>
<series>
<ColumnSeries yField="column0jbcount" xField="Quarter"
/>
<ColumnSeries yField="column0pgcount" xField="Quarter"
/>
</series>
</ColumnChart>
<DataGrid id="detailedPrintReport" visible="true"
width="100%" height="100%"/> -
Hi all,
In my report i need to show one chart view. I'm having one prompt. There the user is asked to select a no. for eg. say 10. and a date eg. 10-JAN-09. So my report should show the data from 10-JAN-09 and go backwards to 10 days. if he selects 5 days then only 5 days of data only need to show from that date. This part is ok. The chart has five sections in it. They are
1) 80-100% of the time period
2) 60-80%
3) 40-60%
4) 20-40%
5) <20%
So the legends should vary according to this.
Suppose if the user selects 10 days then the legend should be,
1) 8-10 days
2) 6-7 days
3) 4-5 days
4) 2-3 days
5) less than 2 days
If user selects 5 means then the legend should be,
1) 5 days
2) 4 days
3) 3 days
4) 2 days
5) 1 day
In the prompt im saving this value in one variable. So all i need to do is to apply aggregation on the variable and place it in the column name. But i dont know where to give it. Please help.
Thanks,
KarthickHi when you dynamically change the table column that will automatically reflect in the chart legend.
please check the following link for dynamically changing column header name
http://oraclebizint.wordpress.com/2008/01/25/oracle-bi-ee-101332-dynamic-column-headers-using-presentation-variables-sets-and-conditional-formatting/ -
I looked over the posts on CFChart but did not find anything
that addresses my specific problem with the cfchart. So if you can
help, I'd appreciate it very much!
What I want to do is take the dynamic name of the column
derived from the first query and use that name in the Legend. E.G.
A_R1_DIS is the first dataset, A_R1_J is the second dataset, and
A_R1_PPLI is the third dataset. Then show a line graph with each
dataset based on the first query. The X Axis displays the Date/Time
value and the Y Axis displays the number of points for each record
of time for each dataset individually. I was able yesterday to get
all three datasets to display individually but when I tried to show
the legend it either displayed only the first Dataset name
"A_R1_DIS" or it displayed "NONE". Currently the code will not
display any line on the chart and the legend repeats the A_R1_DIS
as many times as there are records in the table (60+).
I use the following query to get the dynamic column name
"SelectedDatasetColName" from the MasterDataList table.
<CFQUERY name="getSelectedDatasetColName"
datasource="#getcfdbname.EventCFDBName#">
SELECT MDL_TestName + '_' + MDL_DatasetID + '_' +
MDL_MeaningfulName as SelectedDatasetColName
FROM MasterDataList
</CFQUERY>
Here is where I'm using the "SelectedDatasetColName" value:
******************************************* queries
<CFQUERY name="DatasetHistogramQry"
datasource="#getcfdbname.EventCFDBName#">
SELECT
<cfset i = 1>
<cfloop query="getSelectedDatasetColName">
#SelectedDatasetColName# as col#i#,
<cfset i = i + 1>
</cfloop>
JDay, TheHour, TheMinute,
convert(varchar(12), JDay, 114) + ' ' + convert(varchar(12),
TheHour, 114) + ':' + convert(varchar(12), TheMinute, 114) as
DateTime
FROM vPositionHistogram
ORDER BY JDay, TheHour, TheMinute
</CFQUERY>
Here is the code for the table; which works correct:
**************************** Report Code
<TABLE>
<TR>
<TH>Day</TH>
<TH>Hour</TH>
<TH>Minute</TH>
<CFOUTPUT QUERY="getSelectedDatasetColName">
<TH>#SelectedDatasetColName# Message Count</TH>
</CFOUTPUT>
</TR>
<CFOUTPUT QUERY="DatasetHistogramQry">
<TR BGCOLOR="###IIF(DatasetHistogramQry.currentrow MOD 2,
DE('DCDCDC'), DE('FFFFFF'))#">
<TD ALIGN="center">#JDay#</TD>
<TD ALIGN="center">#TheHour#</TD>
<TD ALIGN="center">#TheMinute#</TD>
<CFSET i = 1>
<CFLOOP INDEX="X" FROM="1"
TO="#getSelectedDatasetColName.recordcount#">
<TD ALIGN="center">#evaluate("col#i#")#</TD>
<CFSET i = i + 1>
</CFLOOP>
</TR>
</CFOUTPUT>
</TABLE>
Here is the output for the table; Dynamic Column Name used to
repeat counts for each dataset.
********************************* output
Day Hour Minute A_R1_DIS Message Count A_R1_J Message Count
A_R1_PPLI Message Count
37 17 36 0 2 35
37 17 37 19 6 32
37 17 38 28 30 33
37 17 39 40 27 27
37 17 40 66 64 32
Here is the problem code. I have tried several variations on
this code but currently all it does is display a blank chart.
**************************** Chart Code
<CFCHART FORMAT="flash" CHARTHEIGHT="340" CHARTWIDTH="600"
SHOWXGRIDLINES="yes" SHOWYGRIDLINES="yes" SHOWBORDER="no"
FONTBOLD="no" FONTITALIC="no" XAXISTITLE="Timeline (Day
Hour:Minute)" YAXISTITLE="Message Counts" SHOW3D="no" ROTATED="no"
SORTXAXIS="no" SHOWLEGEND="yes" TIPSTYLE="MouseOver"
SHOWMARKERS="no">
<CFOUTPUT QUERY="DatasetHistogramQry">
<CFSET i = 1>
<CFLOOP INDEX="X" FROM="1"
TO="#getSelectedDatasetColName.recordcount#">
<CFCHARTSERIES QUERY="DatasetHistogramQry" TYPE="line"
ITEMCOLUMN="#DateTime#" VALUECOLUMN="#evaluate("col#i#")#"
SERIESLABEL="#getSelectedDatasetColName.SelectedDatasetColName#">
<CFSET i = i + 1>
</CFLOOP>
</CFOUTPUT>
</CFCHART>
Please let me know if you need any additional info on my
problem and if you can help, it is greatly appreciated!!!!
- DebraDateTime is a column in the vPositionHistogram (View). Col#i#
is the variable used to loop through the column names derived from
the getSelectedDatasetColName query. The view is populated
dynamically and the columns in it vary depending on the dataset
used to populate the view. The view can have 1 to many columns.
That is why I pull the column names from the MasterDataList table
and use a variable to get the values from each column. My column
names end up being Col1, Col2, Col3, and so on. I use that variable
in the loop to get the data from vPositionHistogram for each column
in the report/chart. I made some headway on Friday before I called
it a day, but I will try the last suggestion and post my findings
in a little while. Thanks! -
Hi,
I have created a few column charts in Crystal XCelsius and have enabled value alerts so that the bars show up as different colours depending on the data. When I first assign the range for the alerts, the colours show up correctly. However, when I preview the chart, the bars are not coloured correctly-- i.e. not according to the specified range. Has anyone encountered a similar problem with alerts?
Thanks.I believe this issue has to do with linking an alert to a cell. If that cell changes value, then everything seems to go to downhill. I believe this was supposed to be fixed in SP1, but it does not appear to be. I have a gauge with a value, a maximum limit, and an alert range that are all linked to dynamic cells, and the values change, but the needle never moves.
As an example, the lower limit is 0, the upper limit is 10, the value is 5, so the needle points straight. The user does something to change the value to 2, and the lower limit stays at 0, and the upper limit stays at 10, and the value label changes to 2, but the needle still points up and down. -
Stacked Column Chart drill down
I have a stacked column chart. Data is dynamic. Sometimes one column will have 0 as value.
I need to do a drill down on the ones which has value. In order to do a drill down everytime, I don't want my drill down to be tied to a specific serie...
How can I do that?
Thanks,
WenHi Wen:
Let me do a quick demo to you so you can learn how drill down for stacked column chart works
1. Create a new stacked column chart.
2. Choose data binding "By Range" and "Data In Columns" binds to range "A1~C2", which has range data as following:
a, 1, 2
b, 3, 4
3. After finishing step 2, there will be two series created (Series 1, and Series 2)
4. Open drill down tab and check "Enable Drill Down".
5. Choose "Insert Type" as "Row".
6. Click "Series 1".
7. Bind "Source Data" to range "D1~E2" which contains value as following:
11,12
13,14
(these are the drill down value you want to insert)
8. Bind "Destination" to "D3~D4" (empty cells)
9. Create another component "Grid" under "Other" folder.
10. Bind grid data to "D3~D4" to present the drill down data.
11. Preview the xlf file, can click values in series 1, you will see the drill down result. (Grid will be refreshed with new drill down data)
Hope the demo above can help you in your practice, also you can refer to help documents for more information. Let me know if you have any other questions!
Thanks!
Bill -
Stacked Column Chart (Total and Combination Chart)
Hi,
I tried to find the answer at old posting, but failed to find proper solution.
So here I go again with the same old problems:
1. Any method / trick to display total on top of each stacked column ?
(Label is not an option, since it is static and will not move following the height of the stacked bar).
2. Any method / trick to combine stacked column chart with line chart ?
(Overlay is not an option, because I think it is too tedious to play around with color and border)
Thanks for the bandwidth.
Regards.
NB: Are there any XCelcius add-on for those 2 functions ?Hi Yudie,
Can you get compromised in the following way ?
In the X Axis labels, you can get the values concatenated dynamically and displayed. Example given below:
2008 2009 2010
P180 P250 P280
A172 A263 A265
Whereas P denotes to Plan and A denodes Actuals. Above to this labels stacked colum wil be there as usual.
Consider and revert, in case you need any more clarification on this.
Keep posting.
With best wishes
BaaRaa.
Edited by: Baskar Rajagopalan on Feb 23, 2011 3:36 PM -
Column Chart displaying blank columns
I've this column chart whose data provider is set dynamically. The chart has a two Column Series. Occasionally the columns are displayed as blank.
Although the corresponding labels on x-axis and tool tips are displayed correctly. Has anyone experienced similar issue? Kindly suggest a solution.Thanks for the reply. No the data provider is surely not null as the same collection
is being set as data provider for a data grid too. And data grid always displays the data.
Besides if the data provider was null it wouldn't have shown the x-axis labels and the
tool tip values.
Code Sample:
Basically chartData is a XMLListCollection object, its being populated on a call back method of a
HTTPService request.
The following method is called once the chartData is populated.
//Populate columns for abcChart
private function populateColumns():void {
abcChart.series = new Array();
var haltsSeries:ColumnSeries = new ColumnSeries();
var haltsFill:SolidColor = new SolidColor(0xFF0000);
haltsSeries.dataProvider = chartData;
haltsSeries.displayName = "Halts";
haltsSeries.yField = "HALTS";
haltsSeries.setStyle("fill",haltsFill);
abcChart.series.push(haltsSeries);
var warningsSeries:ColumnSeries = new ColumnSeries();
var warningsFill:SolidColor = new SolidColor(0xFFFF66);
warningsSeries.dataProvider = chartData;
warningsSeries.displayName = "Warnings";
warningsSeries.yField = "WARNINGS";
warningsSeries.setStyle("fill",warningsFill);
abcChart.series.push(warningsSeries);
return;
Following is the Columnchart with its children and properties.
<mx:ColumnChart id="abcChart" showDataTips="true"
width="100%" height="95%" visible="false"
dataTipFunction="chartDataTip">
<mx:backgroundElements>
<mx:GridLines direction="horizontal">
<mx:horizontalStroke>
<mx:Stroke color="0xCCCCCC" weight="1"/>
</mx:horizontalStroke>
</mx:GridLines>
</mx:backgroundElements>
<mx:horizontalAxis>
<mx:CategoryAxis displayName="Area"
categoryField="AREA"/>
</mx:horizontalAxis>
<mx:horizontalAxisRenderer>
<mx:AxisRenderer fontSize="8"
cachePolicy="off" rotation="40"/>
</mx:horizontalAxisRenderer>
<mx:verticalAxis>
<mx:LinearAxis title="Count"
minimum="0" autoAdjust="true"/>
</mx:verticalAxis>
</mx:ColumnChart> -
Background Element Size issue in Column Chart
Hi All,
I am trying to add multiple chart to hbox dynamically with each chart having vbox as an background element and only first and last chart is having axis.
for example shown in below image three column chart are getting added out of which second chart dosn't contain either axis on left or right.
I am facing a problem in making background element of same size means there should not be size difference as shown below:
How can i make all the vboxes that i have used of same size ?
Thanks in advance.Spacing is done based on the number of columns in the chart. It is better to use one chart and group the data accordingly. It is possible to add multiple axis for a chart
-
Drill Down between 2 stacked column chart with multiple rows.
Hi,
Can anyone please help me.
1) i have to create stacked column chart with Region and cout of calls for previous 3 quarters.
2) the 2nd stacked column should display the priority with the count of calls for the respective selection of region on the 1st chart..
to achieve this,
i'm using 2 stacked column charts and 1 lebel baseb menu.
from this i can able to get the drill down from label based menu to 2nd stacked column chart but i couldn't able to done the same from 1st stacked coumn chart.
Becoz my data is multiple row for each quarter.
please suggest me to achieve the drill down between 2 stacked column charts.
assume that my data like below.:
coulmns for 1st stacked column chart : Region, Q2,Q3 &Q4
Region Q2 Q3 Q4
Other 3658 3497 497
NA - North
America 3 3 1101
APJK 1 4 597
UK 324
EMEA North 1 1 288
CORPORATE 1 5 215
LA -
Latin America1 2 208
EMEA 1 199
EMEA South 1 1 169
Coulmns for 2nd coumn chart: Region, Priority, Q2,Q3,Q4 ()which is derived from 1st table.
Region Priority Q2 Q3 Q4
Other D: End of Next Day 1568 1613 239
Other C: End of Day 983 893 119
Other A: 2 Hour 631 610 70
Other B: 4 Hour 396 318 56
NA -
North AmericaD: End of Next Day 2 2 514
APJK D: End of Next Day 3 297
NA -
North AmericaC: End of Day 284
NA -
North AmericaA: 2 Hour 1 170
UK D: End of Next Day 157
APJK C: End of Day 1 1 152
Other E: 3 - 5 Business Days 68 58 13
EMEA North D: End of Next Day 1 136
CORPORATE D: End of Next Day 4 107
NA - North America B: 4 Hour 1 104
LA - Latin America D: End of Next Day 1 1 86
EMEA D: End of Next Day 86
UK C: End of Day 85
APJK A: 2 Hour 79
EMEA South D: End of Next Day 72
EMEA North A: 2 Hour 69
EMEA North C: End of Day 56
APJK B: 4 Hour 55
EMEA C: End of Day 1 53
LA - Latin America C: End of Day 54
UK A: 2 Hour 49
EMEA South C: End of Day 1 44
CORPORATE A: 2 Hour 1 43
CORPORATE C: End of Day 44
LA - Latin America A: 2 Hour 1 42
EMEA South A: 2 Hour 1 32
EMEA B: 4 Hour 30
UK B: 4 Hour 30
EMEA A: 2 Hour 27
EMEA North B: 4 Hour 1 26
NA -
North AmericaE: 3 - 5 Business Days 25
LA - Latin America B: 4 Hour 23
EMEA South B: 4 Hour 20
CORPORATE B: 4 Hour 17
APJK E: 3 - 5 Business Days 13
Other F: 6 - 10 Business Days 6 4
Other G: 11 - 20 Business Days 6 1Hi Srinivas,
I'm using label based menu "filterd rows" only but i couldn't bind the drill down with the 1st stacked column chart.
for mor details:
1) i'm having 2 stacked coumn charts & 1 lebel based menu but eventhough i couldn't able to achieve.
if i select the lebel based values then the 2nd stacked column charts is giving detailed valus but if i keep my mouse on the 1st stacked column chart the there is no changes on the 2nd chart..
somewhere i'm mising the binding data between 1st stacked coumn chart & lebel based menu on drill down part.
Becoz i'm having multiple rows. so can you please try your and send me the xlf file using your concept. -
How can we get Dynamic columns and data with RTF Templates in BI Publisher
How can we get Dynamic columns and data with RTf Templates.
My requirement is :
create table xxinv_item_pei_taginfo(item_id number,
Organization_id number,
item varchar2(4000),
record_type varchar2(4000),
record_value CLOB,
State varchar2(4000));
insert into xxinv_item_pei_taginfo values( 493991 ,224, '1265-D30', 'USES','fever','TX');
insert into xxinv_item_pei_taginfo values( 493991 ,224, '1265-D30', 'HOW TO USE','one tablet daily','TX');
insert into xxinv_item_pei_taginfo values( 493991 ,224, '1265-D30', 'SIDE EFFECTS','XYZ','TX');
insert into xxinv_item_pei_taginfo values( 493991 ,224, '1265-D30', 'DRUG INTERACTION','ABC','TX');
insert into xxinv_item_pei_taginfo values( 493991 ,224, '1265-D30', 'OVERDOSE','Go and see doctor','TX');
insert into xxinv_item_pei_taginfo values( 493991 ,224, '1265-D30', 'NOTES','Take after meal','TX');
select * from xxinv_item_pei_taginfo;
Item id Org Id Item Record_type Record_value State
493991 224 1265-D30 USES fever TX
493991 224 1265-D30 HOW TO USE one tablet daily TX
493991 224 1265-D30 SIDE EFFECTS XYZ TX
493991 224 1265-D30 DRUG INTERACTION ABC TX
493991 224 1265-D30 OVERDOSE Go and see doctor TX
493991 224 1265-D30 NOTES Take after meal TX
Above is my data
I have to fetch the record_type from a lookup where I can have any of the record type, sometime USES, HOW TO USE, SIDE EFFECTS and sometimes some other set of record types
In my report I have to get these record typpes as field name dynamically whichever is available in that lookup and record values against them.
its a BI Publisher report.
please suggestif you have data in db then you can create xml with needed structure
and so you can create bip report
do you have errors or .... ? -
Need help to develop report with column chart
Hi
I am new to SAP BO world.Could anyone please help me to design report with column chart.Please guide me how to develop report for the following requirement.I am not aware of variance columns and variance labels.Please provide some guidance or some tutorials(for column Chart) so that I can complete the task. Please reply me as soon as possible.Waiting for reply.Thanks in advance.
Type: Column Chart
u2022 Rows: Banking Asset Margin (%)
u2022 Start / End Columns: PY YTD Act(Prior year year to date); CY YTD Act(Current year Year to date)
u2022 Variance Columns: # Var (CY-PY Act) for GOLM; Volume; Rate; Non Banking NII; Banking Volatility in NII; Banking Volatility in OOI; Fees/One Offs/Other; Volatile Items; Sophie
u2022 Sub-total columns: PY YTD Underlying; CY YTD Underlying.
u2022 Variance Labels: % Var (CY-PY Act) for Total Income and Underlying Income
u2022 Sub-Total Labels: # Var (CY-PY Act) for Net Insurance Income; Banking Volatility; Other Operating Income
Additional information
u2022 Variance columns (bar) colours: Red = Adverse to Prior Year; Green = Favourable to Prior Year
u2022 Columns to show values. Adverse values to be shown in red text in brackets. Favourable results in black text.
u2022 All values in Black, but adverse to be shown below the bar.Hi,
This type of question is almost impossible to answer over a forum .
You need to work with your business to understand what these requirements mean in terms of data modelling and relationships between object entities.
- Some of these metrics should be delegated to source, and calculated in the update routines to your datatargets (aka Cubes/Tables)
- Others could be resolved in the semantic layer (Universe)
- Other will be calculated in the presentation layer as local formulae or variables.
whilst BusinessObjects is a fairly intuitive tool, it may be unreasonble to expect a new learner to deliver an advanced report with conditional formatting.
Regards,
H
Maybe you are looking for
-
Copy and concatinate value from Characteristic1 to Characteristic 2 - BI IP
Hi , My Requirement is to to copy Company code value into Profitcenter when data is modified or new record is created manually in Input ready query. Example. 0Comp_Code -- 0002 0Material --- --- 1111 0Quantity --- --- 50 when the record is storing
-
Internal Software error PGC for encore CS3 !!! solved !!!
Almost everybody here knows the next error: PGC "timeline name" has an error at xx:xx:xx:xy internal software error : %0, line timeline name - PGCINFO: name= timeline name, ref=BPGC, time=xx:xx:xx:xy Where the y in time stands for the length of the t
-
Hi I have been reading and looking up on articles regarding the use of activeX controls on a SAP B1 form. So far, I have been able to display the control. But when it comes to manipulate its properties and/or methods, the control throws an error or
-
I tried 3 ways: Export as QT, Using QT conversion,and through Compressor. Each time Settings were DV NTSC 4:3 in both QT and Compressor. Yet when going to DVD Studio Pro it's anamorphic. I checked the QT: it was anamorphic too! Does anybody have an a
-
Dear Experts, I know the transaction QAC2 for transfering inspection lot qty from plant to plat or storage location to storage location. When it is executed for an inspection lot and SL is changed or plant is changed a material document of mvt-323 is