Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Setting a conditional format on a Full Accumulation chart

Hi I have created a series of charts the first shows simply the average of a dataset, the second shows the distribution of the dataset and the third using the Full Accumulation button shows the cumulative distribution

I would like to set up a conditional format whereby the columns in the last chart change colour when they reach say 90% of the total

Is this possible and can I do it without complicated scripting !!

1 Solution

Accepted Solutions
Not applicable
Author

Sorry Sunny - Took a break and it became clear

I used

if(RangeSum(Above(NumericCount ([Release Time]),0,RowNo()))/NumericCount(total([Release Time]))>0.9,red(),blue())

View solution in original post

6 Replies
Not applicable
Author

‌do this in the background colour of the expression

if ( avg(sales)/avg( total sales ) >=.9,

     Rgb(0,255,0))

sunny_talwar

What is the expression you are using for accumulation here? Are you using the QlikView's inbuilt accumulation or are you using RangeSum(Above())?

Not applicable
Author

In the bottom chart I am not using an expression rather I am just using the Full Accumulation functionality to create the visualization. I am thinking I probably need to use an expression which I can then do the arithmetic off for the conditional format I am just not sure what it is. Will look closer at both pieces of feedback now - Thanks Both

Not applicable
Author

OK Sunny so I have changed my chart away from using Full Accumulation to instead use this expression

RangeSum(Above(NumericCount ([Release Time]),0,RowNo()))

Which gives me the accumulation I am looking for but I am still struggling to do the % part despite reading many of your helpful posts

So I have release time as a dimension and from the accumulation I know that for the longest release time the Numeric Count of events is 29. I would now wish to identify the first release time whose cumulative events is greater than 90%

Hope that makes sense

Thanks

Jason

Not applicable
Author

Sorry Sunny - Took a break and it became clear

I used

if(RangeSum(Above(NumericCount ([Release Time]),0,RowNo()))/NumericCount(total([Release Time]))>0.9,red(),blue())

sunny_talwar

So its all working now? If it is, I would suggest closing this thread by marking your own answer as a correct one.

Best,

Sunny