Need to create Custom control for Funnel Chart in iOS ( Either in Swift or Objective - C ) .
Found Few library for it : here is link : https://github.com/ayudasystems/funnel
Planning to use BezierPath to implement Funnel Chart .
Kindly suggest the Data Structure which needs to implement this control .
**Note - Search lot of post but dint find the exact solution to implement Funnel chart in ios ( few posts are there but answers are not correct or accepted)
A funnel chart helps you visualize a linear process that has sequential, connected stages. For example, a sales funnel that tracks customers through stages: Lead > Qualified Lead > Prospect > Contract > Close. At a glance, the shape of the funnel conveys the health of the process you're tracking.

You have to use simple logic to implement above funnel chart.
There are 5 items : A1,A2,A3,A4,A5 and funnel is height of 200.
&& A1=30% ,A2=25% , A3=20%, A4=15% and A5=10%
Now distritribute items according to height % in funnel. So
A1 = 0.3*200  = 60
A2 = 0.25*200 = 50
A3 = 0.2*200  = 40
A4 = 0.15*200 = 30
A5 = 0.1*200  = 20
--------------------
Total         = 200
On the basis of above calculated height:- 5 different BezierPath can  be drawn . 
Above data can be generalised to 'n' items and 'x' Height .
Logic to Calculate height Distribution
class HeightDistribution {
   class func  height(percentages: [Float] , TotalHeight:Float ) -> [Float]  
      {
        var heights = [Float]()
        for percentage in   percentages
        {
           let height = (percentage/100)*TotalHeight
            heights.append(height)
        }
        return heights
    }
}
Progress Demo Funnel Chart app || Swift3
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With