1 2 Previous Next 23 Replies Latest reply on Mar 31, 2020 8:31 AM by Simon Runc Go to original post
      • 15. Re: How to create a doughnut chart inside a doughnut chart?
        sudheerbabu mandalapu

        Hi All,

         

        Am also trying the similar type of doghnut with in doghnut, but am getting like below,could you please let me know the trick to make it one doghnut. Please share the step by step if possible

         

        • 16. Re: How to create a doughnut chart inside a doughnut chart?
          Simon Runc

          hi

           

          If you look at my original solution

           

          Re: How to create a doughnut chart inside a doughnut chart?

           

          That gives set by step. The key is the index()/100000, and then change the axis range to between 1-2. As the /100000 is such a small number when the axis range is extended to 1-2 then it gives the illusion of them being on top of one another (they are actually off-set from each other by 0.000001, but this is imperceptible when the axis range is extended.

          1 of 1 people found this helpful
          • 17. Re: How to create a doughnut chart inside a doughnut chart?
            sudheerbabu mandalapu

            Thanks Simon,

             

            have modify the axis and it's worked for me.

            • 18. Re: How to create a doughnut chart inside a doughnut chart?
              Simon Runc

              Excellent. This is (as with quite a few of the tricks in Tableau) all "smoke and mirrors" ...what the eye don't see the visual analyst gets away with!!

              • 19. Re: How to create a doughnut chart inside a doughnut chart?
                Krishna DW

                Hello Simon,

                 

                I have the same requirement and tried to implement using this method, thank you very much,

                However, I have some issue

                 


                My Requirement here is to show three rings(Category) as Donut within Donut  and  hover over info

                 

                When Region  filter ="All"

                and I hover on outer ring CSE it's as below, and the same would be when I hover over the other two rings with their respective category which is expected and am good with that.

                Category here has 3 values (CSE, EEE, IT) which here am showing as rings of the donut . It's all good

                 

                BUT,

                When I choose Region ='DATA 143'  its only showing  two rings that too with

                two rings (CSE and EEE) getting overlapped as below, where the same ring is showing CSE and EEE for status

                but the expectation here to show each ring individually.Please let me know where is it going wrong

                 

                Herewith attaching 2019.2 twbx workbook

                Simon Runc

                 

                Thanks

                Krishna

                • 20. Re: How to create a doughnut chart inside a doughnut chart?
                  Krishna DW

                  Hi Simon

                   

                  Thank you very much for taking time looking into this,

                   

                  Just to let you know am not facing above issue if am using Measure Values and Measure Names.

                   

                  Even when I choose  Region ='DATA 143', its not overlapping middle ring(EEE) and it is showing up as expected with only Complete Count ring(Expected).

                   

                   

                  But, user's main requirement is also to display % of total for each status ('Complete' and 'Pending') per ring (Green /Grey color) when we hover over donuts like above post.

                  I am not able to get % of total as am use Measure Values and Measure Names . Can you please let me know if am missing something here.

                   

                    Attached workbook using same data set as previous post

                   

                   

                   

                  Thank you very much.

                  Krishna

                  • 21. Re: How to create a doughnut chart inside a doughnut chart?
                    Simon Runc

                    hi Krishna,

                     

                    So I think it will be tricky (if possible) to get the %age in. The problem with measure names/values is that they aren't real dimensions, meaning we can't access them in formulas, or partition table calculations over them.

                     

                    We can do this quite easily....

                     

                     

                    but can't do measure values/home count as a formula. Did you change to the measure names/values due to the re-sizing issues with the other method? If so I can take a look at getting the original method to work, where getting the %age would be fairly easy (the re-sizing is the complicated bit on that one!!)

                    • 22. Re: How to create a doughnut chart inside a doughnut chart?
                      Krishna DW

                      Hi Simon,

                       

                      We really do not have to use Measure Names/Values method, I just tried to show you that overlapping of category(CSE,EEE) for Region ='DATA 143' is not happening here. But we could not get % of total.

                          So we can go with the previous method where it split based on status and Home count,but with % of total for status and without category getting overlapped for Region ='DATA 143'.

                       

                      Please let me know if you need any further information

                       

                      Thank you very much

                       

                      Krishna

                      • 23. Re: How to create a doughnut chart inside a doughnut chart?
                        Simon Runc

                        hi Krishna,

                         

                        Cool. So as I said before the problem seems to come from the Pie Size, which (not very intuitively) is applied against each segment. This means when we filter out 'CHE', the category EEE only has one segment. This means that the others both have 2 sizes (one for the pending and one for the completed) but it only has one.

                         

                        I have done a bit of a hacky solution, which does work, but is not very dynamic....

                         

                        I first created the sizes manually like so

                        [Size]

                        if [Category] = 'CSE' then 1

                        elseif [Category] = 'IT' then 2

                        else 3

                        end

                         

                        and then created this bit to amend the sizes depending on the count of status'

                        [Size_amended]

                        min([Size])

                        +

                        if sum({fixed [Category]: countd([Status])}) = 2 then 0 else min([Size]) end

                         

                        what this does is double the size where a category on has one status, or not if it doesn't. Btw as I've used an LoD here to compute the number of status' (per category) I had to make the region a context filter (so it get's applied before the LoD is computed).

                         

                        I've tried swtiching out the (not very dynamic) [Size] field with a rank_dense(min([category]), but for some reason that doesn't seem to work the same way. I'll keep having a play, and post a more dynamic/sustainable solution once I have it working, but hopefully this "hacky" version buys you a few days!

                         

                        I've also added in the %age, which is the easy bit when we have it set up like this!

                        1 2 Previous Next