तो DefaultPolarItemRenderer
, सभी ध्रुवीय अंक में ले जाता है नियमित Java2D निर्देशांक के लिए ध्रुवीय अंक बदल देता है, उन बिंदुओं के साथ एक Polygon
बनाता है और फिर इसे छोड़ता है।
public class MyDefaultPolarItemRenderer extends DefaultPolarItemRenderer {
@Override
public void drawSeries(java.awt.Graphics2D g2, java.awt.geom.Rectangle2D dataArea, PlotRenderingInfo info, PolarPlot plot, XYDataset dataset, int seriesIndex) {
int numPoints = dataset.getItemCount(seriesIndex);
for (int i = 0; i < numPoints; i++) {
double theta = dataset.getXValue(seriesIndex, i);
double radius = dataset.getYValue(seriesIndex, i);
Point p = plot.translateValueThetaRadiusToJava2D(theta, radius,
dataArea);
Ellipse2D el = new Ellipse2D.Double(p.x, p.y, 5, 5);
g2.fill(el);
g2.draw(el);
}
}
}
और उसके बाद इस वर्ग कहीं instantiated: यहाँ कैसे मैं इसे एक बहुभुज के बजाय डॉट्स आकर्षित करने के लिए मिल गया है
MyDefaultPolarItemRenderer dpir = new MyDefaultPolarItemRenderer();
dpir.setPlot(plot);
plot.setRenderer(dpir);
स्रोत
2010-03-17 18:12:11
(उफ़, नहीं स्वरूपण यहाँ को खराब करता पता था) –