Combined Side-by-Side and Stacked Bar Charts
I need to create a chart with side-by-side stacked bar charts with one additional level of detail than appears to be available. I have Crystal X.
I need to show 2 bars for each customer and each bar needs to have 12 months of sales within the bar - each month a different color.
I can create 2 stacked bars - one for each year. I can also create side-by-side bars - one for each year by customer.
But I cannot seem to combine them. Any ideas?
Thank you in advance for your assistance.
CR charts are very limited on what you can put in a chart. There have been several posts to the CR Idea Forum on this subject. You may need to do seperate charts.
Similar Messages
-
Can you print labels to the side on stacked bar charts in Crystal
can you print labels to the side of the bars on stacked bar charts in Crystal?
Hi Ginger,
I don't see an option to do that in CR. Is there a specific reason why you want them on the sides or is it just a client requirement?
Try posting this to the Crystal Reports Idea Place.
-Abhilash -
Line chart and Stacked Bar Chart
Hai,
I am creating report in line chart view.I want to know wheather it is possible to get data of Same column to be populated as different lines.
And also to get data of Same column to be populated as different stacks in the stacked bar chart .
Thanks in advance...Hello
You have to just select the column for grouping and the same col for aggregate field plotting. This is standard function, and I think this is straight forward. -
Urgent: Combination of stacked bar chart and line chart
Hi,
I have the following request: First I need series depending on the year (no problem) and two stacks for each series (first problem). Now I need two line, line 1 for total of stack 1 and line 2 for total of stack 2. Both lines should have a label showing the difference from one to next series in percent.
Can something like this be done in BI Publisher. I got an excel sheet with such a chart, so it is possible there. Any templates, hints or tipps?
I need this very urgent because it's the main report of my project. So if this is not working I can stop the project and have to find another reporting tool.
Thanks
chrissy
Message was edited by:
chrissyI've made again some tests by myself and recognized that there's something strange in the chart.
When I create a stacked bar chart with values of DURATION, labels for TYPE_NAME and series of YEAR the first thing is, that it is not ordered. So how can this be done?
The second error, is hard to explain ...
Let's say I've the following values:
Type1 Type2 Type3
2005 1 2 3
2006 4 5 6
2007 7 8 9I would expect the following chart:
2005 2006 2007
1 4 7 Type1
2 5 8 Type2
3 6 9 Type3But the chart shows me the following:
2005 2006 2007
1 7 4 Type1
5 2 8 Type2
3 6 9 Type3You can see, the values are totally mixed, the code of the chart is the following:
chart:
<Graph seriesEffect="SE_AUTO_GRADIENT" graphType="BAR_VERT_STACK">
<Title text="" visible="true" horizontalAlignment="CENTER"/>
<MarkerText visible="true" markerTextPlace="MTP_CENTER" />
<LocalGridData colCount="{count(xdoxslt:group(.//ROW, 'YEAR'))}" rowCount="{count(xdoxslt:group(.//ROW, 'TYPE_NAME'))}">
<RowLabels>
<xsl:for-each-group xmlns:xsl="http://www.w3.org/1999/XSL/Transform" select=".//ROW" group-by="TYPE_NAME">
<Label>
<xsl:value-of select="current-group()/TYPE_NAME"/>
</Label>
</xsl:for-each-group>
</RowLabels>
<ColLabels>
<xsl:for-each-group xmlns:xsl="http://www.w3.org/1999/XSL/Transform" select=".//ROW" group-by="YEAR">
<Label>
<xsl:value-of select="current-group()/YEAR"/>
</Label>
</xsl:for-each-group>
</ColLabels>
<DataValues>
<xsl:for-each-group xmlns:xsl="http://www.w3.org/1999/XSL/Transform" select=".//ROW" group-by="TYPE_NAME">
<RowData>
<xsl:for-each-group select="current-group()" group-by="YEAR">
<Cell>
<xsl:value-of select="sum(current-group()/DURATION)"/>
</Cell>
</xsl:for-each-group>
</RowData>
</xsl:for-each-group>
</DataValues>
</LocalGridData>
</Graph>Otherwise I had made the following to have a stacked bar for duration and one for outage:
chart:
<Graph seriesEffect="SE_AUTO_GRADIENT" graphType="BAR_VERT_STACK">
<Title text="" visible="true" horizontalAlignment="CENTER"/>
<LocalGridData colCount="{count(xdoxslt:group(.//ROW, 'YEAR')) * 2}" rowCount="{count(xdoxslt:group(.//ROW, 'TYPE_NAME'))}">
<RowLabels>
<xsl:for-each-group xmlns:xsl="http://www.w3.org/1999/XSL/Transform" select=".//ROW" group-by="TYPE_NAME">
<Label>
<xsl:value-of select="current-group()/TYPE_NAME"/>
</Label>
</xsl:for-each-group>
</RowLabels>
<ColLabels>
<xsl:for-each-group xmlns:xsl="http://www.w3.org/1999/XSL/Transform" select=".//ROW" group-by="YEAR">
<xsl:sort select="YEAR"/>
<Label>
<xsl:value-of select="current-group()/YEAR"/>
</Label>
<Label />
</xsl:for-each-group>
</ColLabels>
<DataValues>
<xsl:for-each-group xmlns:xsl="http://www.w3.org/1999/XSL/Transform" select=".//ROW" group-by="TYPE_NAME">
<RowData>
<xsl:for-each-group select="current-group()" group-by="YEAR">
<Cell>
<xsl:value-of select="sum(current-group()/DURATION)"/>
</Cell>
<Cell>
<xsl:value-of select="sum(current-group()/OUTAGE)"/>
</Cell>
</xsl:for-each-group>
</RowData>
</xsl:for-each-group>
</DataValues>
</LocalGridData>
</Graph>The only thing I miss is a label for each stack, what is shown (so duration or outage) and of course the line.
Thanks for any help
chrissy -
How to combine a stacked bar chart and a line graph together in one report
I have a report in excel that has stacked bar chart and a line graph together in one report. I am trying to recreate the same in Webi, Is this possible? Did any one have similar requirement, could you please share the thoughts?
Thanks,
HemaMay be I don't understand correctly...
But if its really to separate chart area's;
just copy the datablock and format one as line and the other as barchart...
Hope this helps,
Marianne -
How to create stack bar chart on answers that shows % and counts?
Hello guys
I currently have a table that have several columns, each column represent one product name, and one column name "units" indicating how each product is sold...
The requirement is to create a chart view with stack bar that shows the percentage of each product''s unit sales.
Now we are discussing whether we should customize the table to consolidate all these product columns into one "product desc" column with all the product names as row in order to fulfill this requirement..
PLease let me know whether this is needed or not... ALso, how would I be able to create stack bar charts that shows the total sales against each product sales in percentage and counts?
Please let me know, I really appreciate itI tried to do this and was a bit successful. I used the paint catalog. Created a a request with 6 columns assuming units and dollars be stacked and Year ago units to be a line:
Brand Units Dollars 0 Year_Ago_units 1
Added a new request (Combined with similar request and selected paint subject area): Now in this request my columns are:
Brand 0 0 Year_Ago_Dollars Year_Ago_units 2
Assuming Year_Ago_Dollars be standard in your case.
Created a chart view with brand and 1 on x axis and Units, Dollars, Year_Ago_Dollars on y axis and line as Year_Ago_units.
Now able to see what I am expecting. May be you need to tweak a bit more according to your requirement.
Let me know if this is of any help!
Thanks.
Edited by: Venkata on Sep 30, 2010 12:11 PM -
Problems with stacked bar chart in Java SDK and CRDesigner
Hi @ll,
I have an issue with the rendering of stacked bar charts through the Java SDK and the CRDesigner. unfortunately, my research in this forum and with the help of aunt google didn't lead to success.
These are my problems:
I have a stacked bar chart which, when datasets/stacks increase in number per bar, displays errors:
1.) the single stacks of the bar merge together randomly and form bigger stacks with the sum of the singles. the information of single stacks gets lost in the bar.
2.) the total sum of all singles is bigger than the maximum value on the y-axis displays. thus, the scaling is wrong.
1.) appears in the CRDesigner as well as in the Java SDK
2.) only occurs in the Java SDK
Is there any trick to turn the random merging of slices off?
Is the false scaling a known issue and is there a bugfix/workaround?
many thanks for all advice
Tomhi folks,
i found the answer to the above problems:
when you specify the recordfields that are responsible for the change to the next stack or bar, the 'stack' fields have to be unique.
in my case i evaluated durations in msec (as stacks) from different devices (as bars). randomly i had the same durations for one device. what happens is, that CR does not notice a change and accumulates to the first stack with the same duration.
surprisingly this also seems to derange the axis scaling. fix the problem by simply using an overall unique recordfield like rownum or a formula that forms the current timestamp to text as identifier for the stacking.
cheers
.t -
Stacked bar chart/line chart combination
Hi,
I use Crystal Reports 10.I need to produce a chart containing 2 series on the same graph with:
- one series as a stacked bar chart type,
- one series as a line chart type (not stacked).
I tried doing 2 separate charts and superimposing one over the other, but the user wants to export it to excel and when they do so, the graphs appear as 2 separate images rather than one. it appears correctly in pdf though.
How can i achieve this, either in 1 graph or as separate 2 graphs ?
Any help appreciated...
Thanks in advance,
Swathy.Hello Swathy,
If you can get both series in one chart then you can convert one series into line.
To do this right click on the Bar that you want to display as line.Select the series option and then select "Line" from the drop down of "Show Selected Series as:" option.
Hope this will help!
Thanks & Regards,
Amrita -
Stacked Bar chart and Line graphs
I have a report in Crystal which has stacked bar chart and a line graph together in one report.
Is it possible to do the same thing in WebI . Can anybody share the experience.Today you can only have a simple bar (not stacked) and line chart in Web Intelligence. We are looking to improve charts in the future. In the meantime you can look into the masher from the labs...
-
Stacked Bar Chart with data from a Web Service
Hi,
I'm working on Dashboard Design (version 14.0.1.287) and I'm trying to create a chart linked to data from a webservice.
With a Year in input, my webservice gives an Amount per Cities and Products
Data retrieved look like this (Sheet1) :
Paris Tablets 45
Paris Laptops 12
Paris Cellulars 89
New-York Tablets 56
New-York Laptops 36
New-York Cellulars 1
Londres Tablets 150
Londres Laptops 3
Londres Cellulars 45
Then I use a Pivot Table (created manually in Excel) looking like this (Sheet2) :
Tablets Laptops Cellulars
Paris 45 12 89
New-York 56 36 1
Londres 150 3 45
The chart is a Stacked Bar Chart plugged on the previous Pivot Table
I create 3 series (one per Product), values (X) are set with Amount
Category labels (Y) are set with Cities
The goal is to have a dynamic chart (series and categories must update if a new city or a new product appears)
So my question is : how can I set up the chart directly with data retrieved from webservice on Sheet1?
Thx a lot !
Nicolas
Edited by: nicolasheurtevin on Sep 14, 2011 4:58 PMhi
First thing , bad news if you are using .Net framework 1,
just forget it, Flex 2 doesn't work well with framework 1, but 2nd,
good news, if you want to use webservices, you'll have to make an
array of objects on .Net Side and send it as objects to flex, i saw
an example on the net but i can't seem to remember where, on the
other hand,if you want to simply use, like i do, HTTPSERVICE its a
very nice way to talk with .Net and you can see my example here
http://flex1-for-dummies.blogspot.com
By the way, in your code, you have a request tag , but you
aren't requesting anything, because if you were you would have to
make like this
<mx:request>
<Artist>{yourinputtext.text}</Artist>
</mx:request>
So if you don't have an input text, you don't need a request
tag, only the operation. -
Repositioning datalabels on 3-D stacked-bar chart
I am trying to reposition value datalabels on a 3-D 100%-stacked-bar chart. I am using Excel 2010.
I am preparing charts for the age distribution and the race/ethnic distribution of new students, among dozens of others. (Printed, the workbook is over 100 pages, with more charts to be added!)
Each series (for example, "25 to 29" or "Asian") has its distinct color. My boss has stipulated 12pt bold type, but some points are so small that the datalabels are larger than the point. As a result, he
wants the datalabel filled with the category's color. He also wants datalabels for points with 0 values displayed (for instance, "Over 50" or "Not Reported") inside the bar.
On a 3-D bar chart, the middle of a datalabel is positioned at the vertical middle of the point and at the horizontal middle of the face of the point (not the middle of the entire point, thus excluding the sidewall).
The 0-valued points are usually at the top or bottom of the bar. With several categories, inserting the "0" or small-value label at the extreme of the bar often overwrites one or more other labels. My boss wants the second label moved
below the first, etc.
I have used the eyeball method to adjust the datalabels, but I frequently either overlap another label or allow the contrasting color of the point that the labels overlay to leak through the space between the two labels.
I'm trying to tighten the charts' appearance. I have written code, for instance, to horizontally align all datalabels for box-and-whisker charts with the label of the mean. (The labels for the whiskers are not, by default, aligned with the
labels for the box)
The attached code (in VBA, not VB.Net)
Sub test()
Dim bytPoint As Byte, bytSeries As Byte
Dim strDataLabelName As String
Dim objDataLabelNext As DataLabel, objPoint As Point
Const cstrTitle As String = "Position DataLabel"
If Not TypeName(Selection) = "DataLabel" Then MsgBox "Please select a single DataLabel", , cstrTitle: Exit Sub
strDataLabelName = Selection.Name
If Not Left$(strDataLabelName, 4) = "Text" Then MsgBox "DataLabel has an invalid name. It must be ""Text SnPn"". Please correct.", , cstrTitle: Exit Sub
bytSeries = ftbSeries(strDataLabelName)
bytPoint = ftbPoint(strDataLabelName)
With ActiveChart
If bytSeries = .SeriesCollection.Count Then
Selection.Top = .Axes(xlValue).Top + 0.75
Else
Set objDataLabelNext = .SeriesCollection(bytSeries + 1).Points(bytPoint).DataLabel
Selection.Top = objDataLabelNext.Top + objDataLabelNext.Height
End If
Set objPoint = .SeriesCollection(bytSeries).Points(bytPoint)
Selection.Left = objPoint.Left + (objPoint.Width - Selection.Width) / 2
End With
Set objDataLabelNext = Nothing: Set objPoint = Nothing
End Sub
Function ftbPoint(strDataLabelName As String) As Byte
ftbPoint = Val(Mid$(strDataLabelName, InStr(5, strDataLabelName, "P") + 1))
End Function
Function ftbSeries(strDataLabelName As String) As Byte
ftbSeries = Val(Mid$(strDataLabelName, InStr(5, strDataLabelName, "S") + 1))
End Function
...does successfully vertically align the selected datalabel with the label of the next-higher series point, or the bottom of the top axis, if the series is the last. But the datalabel is horizontally aligned with the entire width of the point, not
the face of the point.
My strategy is to add half of the excess of the width of the face of the point over the width of the label to the left edge of the point. objPoint.width returns the 2-D width of the point, not the width of the 3-D face. I've tried subtracting
the point depth from the point width, but that fails on theoretical, much less practical, grounds.
I'm sure a function or a formula exists to convert the three-space depth to two-space so I can subtract it from the point width, but my little pea-sized brain can't conjure it. I've invested a day's work with no solution.
Many thanks in advance for your help.Hi JFHart,
>>The "face" of the point is the front of the object, as opposed to the shaded side. I'm seeking a way to measure the front. The .width property seems to include the side; it measures the entire area that is colored<<
Yes, it is correct. The width property of Point include the side. Here the test I did for it:
And as far as I know, Excel object model doesn't provide a way to get the width of front face. I suggest that you submit the feedback from link below if you want to Office support this feature.
Submit Feedback - Microsoft Support
Regards & Fei
We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
Click
HERE to participate the survey. -
Hi,
is there any way to control the layout of a stacked bar chart (bar width and (horizontally) distance between bars)?
In my chart all bars are on the left side while there is much free space on the right side. So is there a possibility to dynamically scale the bars?Hi Denes,
thanks for your advice. I've alreadey looked at your charting tool a few days ago and it really looks fine. I think I am going to try it out for future projects. But this project is nearly finished and I don't want to change that much at the moment. -
Stacked Bar Chart with Multiple Series Sort Question
Hi,
Apex version 4.1.1
I have a stacked bar chart with three separate series, one showing customer effort, another showing project effort and the third showing other effort, summarized by calendar week. The x-axis of the chart is the calendar "week of" date, and the y-axis has a bar for each of the three series. Not every type of effort occurs every week.
When AnyChart renders the chart, the order of entries on the x-axis seems to be dependent both on which series are present in a given week as well as the "week of" date. Weeks with all three series sort in order by calendar date, followed by weeks where just the 2nd & 3rd series are present, followed by weeks where just the 3rd series is present. See this [url http://tinypic.com/r/b9zdt/6] picture of the chart noting the "week of" dates. Note that the months go Sep-Oct-Nov-Aug-Oct.
Is there a way to force AnyChart to sort the x-axis in chronological order regardless of whether there is data for all three series for a given week? I have looked through the AnyChart XML reference but cannot find a way to do this.
Incidentally, I can solve the sorting problem by combining all three series into a single query:
select
null as link,
week_of as label,
sum(customer_effort) as "Customer Effort",
sum(project_effort) as "Project Effort",
sum(other_effort) as "Training, Admin and Other Effort"
from ...But if I do this, I cannot figure out how to have each bar on a given week link to a different detail page, e.g., if I click on a bar representing customer effort I want to link to one page, but if I click on a bar representing project effort, I want to link to a different page. I have had a look at the [url http://apex.oracle.com/pls/apex/f?p=36648:59:1570983160946101::NO:::] chart examples posted on apex.oracle.com, but cannot figure out how to apply to multiple series in a single query.
Thanks,
MikeThanks, Jeff. I did try this but for whatever reason it doesn't make a difference. I think it is because if there's no data for a given series for a certain week, there is no entry in the data set that is sent to AnyChart.
I was able to get around the issue by "filling in" the missing weeks from each data series. To generate the list of "Week Of" dates for a given date range, I used this code:
select
trunc (each_day) as week_of,
0 as effort
from (
select
(to_date(:p920_start_date,:app_date_format) + 2 - to_char(to_date(:p920_start_date,:app_date_format),'D') - 1) + level each_day
from dual
connect by level <= to_date(:p920_end_date,:app_date_format) - to_date(:p920_start_date,:app_date_format) + 1
where
to_char (each_day, 'D') = '2'This creates an effort entry of 0 for each week within the date range; I use the Monday date of a week as the "Week Of" date. I then union this with my actual data and summarize by week and viola, I get the weeks in order. This also has the benefit of showing a week for which there are no entries in any of the three series.
Thanks for taking a look at this.
Mike -
How to format individual series in stacked bar chart
Hi,
Is there any way I can format (sort order, or transperency) of each series individually in a horizontal stacked bar chart?
I am trying to create a gantt chart, where I am using two series
1. Start Date
2. Duration
The function of series one (Start Date) is only to place the start position of the horizontal bar of series 2 (duration) in the year time frame.
After creation of the stacked bar chart, I want to make the reansperency of series 1 (start Date) as 0 so that the duration bar apears floating and gives the feel of Gantt chart.
Thanks
AurobindoYou may wish to see the article <a href="http://www.xcelsiusjournal.com/index.php?option=com_content&task=view&id=45&Itemid=2" target="_blank" title="Constructing a Simplified Gantt Chart in Crystal Xcelsius">Constructing a Simplified Gantt Chart in Crystal Xcelsius</a>. It does require changing the skin to Windows Classic, but that's a small price to pay for having a gantt-like capability. <p>Loren Abdulezer/Evolving Technologies Corporation<br /><strong><a href="http://www.XcelsiusBestPractices.com">www.XcelsiusBestPractices.com</a></strong><br /><strong><a href="http://www.XcelsiusJournal.com">www.XcelsiusJournal.com</a></strong> </p>
-
SVG CHart error ORA-20001 with Stacked Bar Chart HTML DB 1.6.0.00.87
Hi,
during I put a How-To into execution (How To Create a Stacked Bar Chart) I'll get the following error code:
SVG Chart error:ORA-20001:line_Chart error:ORA-20001:
get_data error:ORA-20001:Parse error:ORA009
(see http://www.oracle.com/technology/products/database/htmldb/howtos/index.html)
This Situation occurs when i add a second series to the
chart. The first series works fine. I've used the following SQL-Statement:
select null l, sales_month, revenue from (select to_char(o.order_timestamp,'Mon YYYY') sales_month, sum(oi.quantity * oi.unit_price) revenue, to_date(to_char(o.order_timestamp,'Mon YYYY'),'Mon YYYY') sales_month_order from DEMO_PRODUCT_INFO p, DEMO_ORDER_ITEMS oi, DEMO_ORDERS o where o.order_timestamp <= (trunc(sysdate,'MON')-1)and o.order_timestamp > (trunc(sysdate-365,'MON'))and o.order_id = oi.order_id and oi.product_id = p.product_id and p.category = 'Audio' group by to_char(o.order_timestamp,'Mon YYYY') order by sales_month_order);
Please help.
Regards
DetlevWell,
I've just been struggling for a couple of hours with a cluster bar chart giving the same problem.
The problem is definitely with "ORDER BY".
I guess the graphing chart is taking the sql query as a string and then does some other manipulation on it which ends abnormally when you include the order by clause.
I presume that if you embed the query in a
SELECT * FROM (<actual query with order by>)
it might mitigate the problem.
Bye,
Flavio
Maybe you are looking for
-
My friend needs a new router and their while family uses PC's.
So as you can tell from my topic, my friend is upgrading his router, and they only have PC based computer, and I suggested he should get an airport extreme. With the new beamforming technology and the reviews, i figured u cant really go wrong. Howeve
-
Can't find Finder and Dock and Desktop has disappeared
I was backing up my MBA (OS 10.6.0) today using Superduper and something strange happened. My hard drive became corrupted and filled with files (105 GB used and 0 GB available). The HDD capacity is 120GB. About 15GB is bootcamp. The backup failed. I
-
I bought a itunes card and i went to redeem it and it told me it was an inactive card
my itunes card wont redeem
-
I just got a macbook pro Retina display , where is a good resourse on how to use it ?
Hi all , never owned a mac before and know nothing about it. Where is a good resource on using it , like a really good users manual ? Like how do I use the turbo boost on it ? Im good on a pc but lord , please help me. Id sure appreciate it. Either t
-
Is there a way to display and export SOURCE timecode in FCP X?
We need to burn DVDs with the SOURCE timecode of our media files displayed. So far, all we've found is a way to apply a Generator that reflects the PROJECT TC.