One option is that you create a point layer at client side from the polygon geometries.This Pie Chart sample is doing that. You can look at CentroidHelper class. For each polygon a point is created, the point position is either the center of the polygon if this one is inside the polygon else a geometry service is used to get a better position.