I just made a chart manually (my math sucks and annotation even more!)

source set(N) + source set(N1) = data total
source set(N) data / data total * 100 = percentage
percentage * 3.6 = degrees

and used spin vert degrees for each source set object. I then gave them individual materials as per names of each object/set. Finally I arranged them around a centre point in ascending order clockwise.

How would I do this via script? Is this hard, I have NO clue.

does it need to be 3d or 2d? Or doesn’t matter? I sure if it is 2d the math would be easier. Then again once you got the 2d one you could have the script extruded it to make it 3d. I can’t help you much, but curious in the solution.