Aggregate an Running Sum in Tableau? - tableau-api

I have a simple data set showing the number of points scored by a player. It is plotted across a [Week Number] x-axis. I added a Running Sum calculation, as a Line, split by Player (color).
For each week, I would like to identify the top player, by total points achieved to-date.
For example, in Week 3, the top player was GREEN with a running total of 8 points.
I tried creating a LOD function {FIXED [WEEK]: MAX(RunningSum)} but it complains that I cannot aggregate an aggregate.
I tried WINDOW_MAX(), RANK(), and tried adjusting the Table Calc, Advanced, Partitioning and Addressing feature.
Is there no way to identify the MAX of a collection of running totals, by discrete [Week Number]?
This can be done fairly easily in TSQL by wrapping a query in outer queries and applying Window functions with partitions defined.

You can absolutely just use RANK(), you just need to make sure the table calculation is being computed using Player. I imagine your [RunningSum] field looks something like this:
RUNNING_SUM(SUM([Points]))
Create a table calculation (let's call it [Player Rank]):
RANK([RunningSum])
Then we need to edit the table calculation. You can do this directly from the Calculated Field edit window (there's a blue link above the OK and Apply buttons that says something like "Default Table Calculation").
We want to compute the rank of our players, so we'll go into "Compute Using:" and select Player.
For a quick sanity check, drag [Player Rank] into Tooltip and check it out.

Related

How to add the values of a binary dimension type column in a bar chart in SAP Analytics Cloud

I'm trying to put together a story and I'm starting to create the first pages with graphics. The graphs are based on tables that are in S4/HANA and have the format as shown in the first image but with more fields, in each line there are weeks (repeated, although they do not appear like that in the photo) and that week will have a condition; "SI" or "no".
When creating a graph I can represent the amount (y-axis) against the condition and the week (x-axis) and it would look like this (2nd photo). In addition to this, I would like to add another bar per week that represents the TOTAL, the sum of condition = "SI" and condition = "NO". Is it possible to do this from SAP Analytics Cloud or do I have to rack my brain changing the lines of the source table adding a total there?
As a clarification, I do not need to add 2 different numerical fields or anything, I would simply like to add the SIand NO of the condition column, if on the y-axis I put volume that represents volume and if I put amount that represents amount, but I am looking for a third bar With the total, I don't know if I explained myself well.
Thank you very much in advance, if you help me solve this I would be very grateful, greetings
https://ibb.co/dcCKKzF
https://ibb.co/kDN3ZXp

How to make a 100% Stacked Chart with 2 measures in Tableau?

I am using Tableau to create a productivity progress bar of actual work done, versus the goal for that day. I have gone through numerous resources, but none seem to apply to only using 2 measures, basically putting the actual data measure turned into a percent within the goal measure. I have the chart working by using a calculated field of Missed Goal ([Goal]-[Actual]) but I am wanting into to look like a 100% stacked chart. Here is a picture of what I have, I just can't seem to get the last step expanding the bars horizontally to be a %100 chart:
Currently looks like:
Wanting it to look like:
Thank you for any help!
This is a good candidate for a few LOD Calculated Fields.
I will give an example based on the SuperStore dataset where [Profit] is a percentage of [Sales]. This can be extrapolated to your use case.
Because you have two dimensions on the view, both will be needed to be accounted for in the LOD calculations below:
//LOD Sales
{Fixed [Segment], Year([Ship Date]): SUM([Sales])} / {Fixed [Segment], Year([Ship Date]): SUM([Sales])}
We will always want [LOD Sales] to equal 1 for bar-chart display purposes.
//LOD Profit
{fixed [Segment], Year([Ship Date]): SUM([Profit])} / {Fixed [Segment], Year([Ship Date]): SUM([Sales])}
This will create the percentage of [Profit] to [Sales].
From there, you'll want to turn off Stack Marks so the bars overlap eachother:
Analysis Menu > Stack Marks > Off
And probably change the axis display to a percentage:
Right click [Measure Values] > Default Properties > Number Format > Percentage
For simplicity, your existing filters should be placed 'On Context' as to not interfere with the LODs. (Please read above linked article for reasoning and alternatives.)
Right click on Filtered Field > Add to Context
The end result should look like this:

Calculating % Complete

enter image description here
From the Image I need to calculate % complete for the order number 1.
Calculation for complete will be
(total number of points for status 'Delivered' / total number of points)*100
The value should be 57%
Can some one help with the calculated field?
Look at IIF in help files
SUM(IIF([Status]="Delivered",[Point],NULL)) / SUM([Point])
I assume your column named Order No. extends all the way down each row (i.e., each row should have a 1 as Order No. but the screenshot does not show that.
Also, the above only works if the status of "Delivered" is consistently cased, which it is not in the screenshot. If it is not consistently cased, wrap [Status] in an Upper function:
SUM(IIF(UPPER([Status])="DELIVERED",[Point],NULL)) / SUM([Point])
You can also get the effect you want, just by manipulating the Tableau user interface -- without needed to write calculated fields as #S. User18 showed. Both approaches work, but it helps to understand both alternatives.
As with #S. User18, I assume your column named Order No. is consistently filled in. I also assume [Order No.] is a dimension.
Place [Order No.] on a shelf, say Rows
Place [Status] on another shelf, say Columns
Place Sum([Point]) on a shelf, say Text
This shows the sum of the number of Points for each combination of the two dimensions: [Order No.] and [Status]
To convert the number of Points to a percentage, right click on Sum([Point]) on the marks card, and choose Quick Table calculation->Percent of Total
Similarly, right click on Sum([Point]) and experiment with different "Compute Using" settings to get the effect you want -- i.e. percent of each row, column, table etc. You can instead Edit the Table Calc if the preset Compute Using options don't get the effect you want.
Right click on any row or column headers that you want to hide - so if you only want to display the percentages for the Completed Status, hide the others. Don't exclude the others as that will change the calculations.
To understand more about Table Calculations, see the online help.

Cognos Chart with "No Data Available" although list shows data

I am completely new to Cognos, so sorry if I don't state some necessary information. I can't go into specifics about my chart, but here is the background:
I have a SQL code running into my Query
My chart and list use the same Query and have the exact same fields
My chart is a basic line graph
When I change my aggregate function to total for my y-axis, then I can see the data points
I do not want to use an aggregate function (I need to see all the points for my x and y-axis)
My x-axis is only one object, but it has multiple y-axis values within a year (which is my series). Ex:product-cost-year list,
where my product is the x-axis, cost is the y-axis, and series is year.
How can I get my chart to appear with all my data points? Eventually, I would like to add an upper and lower confidence interval to this chart.
One way to solve this issue is to create another column that simply counts the number of products (1,2,3,...9). We will call this column count. Keep all your fields the same (product for x-axis, cost for y-axis, and year for series). You will want to add count underneath product on the x-axis. You should see your mouse pointer turn to a horizontal line and it will place it under and to the right of product. Make sure not to place it just to the right of product.

Tableau - Multiple Line Graphs Day by Day

I would like to create a dashboard showing Level Funnel for the users with respect to their register date on the same chart.
My data is like the following:
And from that data, I would like to create the graph like below:
But in tableau I couldn't manage to combine those graphs below, which are separated day by day:
I tried to follow this steps, http://downloads.tableausoftware.com/quickstart/feature-guides/combo_charts.pdf however I couldn't find 'Customize Marks' button in the menu.
That would be great if you can help me on how to combine these graphs into one graph.
Thanks.
Drag the DAY(Date) field from the row shelf to the color shelf
One way to think about it: When you have the DAY(DATE) field on the row shelf, and you've configured it to present as a discrete field, you are telling Tableau to "make a row for each day". When you move that field to the color shelf, you are instead telling Tableau to make a color for each day. The same mental substitution works for discrete fields on most of the other shelves, like columns, shapes, pages -- i.e. make a page for each day.