I want create nodes and edges so I used the combined chart with scatter plot and line graph. But I am not able to connect one root node to its child nodes..Instead it just connects all the child nodes and only two child nodes are connected to root…Can any body tell me where I am going wrong …Below the code I used
public GraphicalView combinedChart(){
int[] x = {3};
double[] values = {50};
XYSeries series = new XYSeries("App");
int length = x.length;
for (int k = 0;k < length; k++)
{
series.add(x[k], values[k]);
}
int[] x1 = {1,2,4,5};
double[] values1 = {70,30,30,70};
XYSeries series1 = new XYSeries("Info");
int length1 = x1.length;
for (int k = 0;k < length1; k++)
{
series1.add(x1[k], values1[k]);
}
/*int[] x2 = {1,5};
double[] values2 = {70,70};
XYSeries series2 = new XYSeries("Dest");
int length2 = x2.length;
for (int k = 0;k < length2; k++)
{
series2.add(x2[k], values2[k]);
}*/
int[] x3 = {3,1,3,2,3,4,3,5};
int[] y3 = {50,70,50,30,50,30,50,70};
TimeSeries series3 = new TimeSeries("Line1");
for(int i=0; i<x3.length; i++){
series3.add(x3[i], y3[i]);
}
XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset();
dataset.addSeries(series);
dataset.addSeries(series1);
//dataset.addSeries(series2);
dataset.addSeries(series3);
XYMultipleSeriesRenderer mRenderer = new XYMultipleSeriesRenderer();
XYSeriesRenderer renderer = new XYSeriesRenderer();
XYSeriesRenderer renderer1 = new XYSeriesRenderer();
//XYSeriesRenderer renderer2 = new XYSeriesRenderer();
XYSeriesRenderer renderer3 = new XYSeriesRenderer();
renderer.setColor(Color.BLUE);
renderer.setPointStyle(PointStyle.SQUARE);
renderer.setFillPoints(true);
renderer1.setColor(Color.GREEN);
renderer1.setPointStyle(PointStyle.CIRCLE);
renderer1.setFillPoints(true);
/*renderer2.setColor(Color.MAGENTA);
renderer2.setPointStyle(PointStyle.CIRCLE);
renderer2.setFillPoints(true);*/
renderer3.setColor(Color.RED);
mRenderer.addSeriesRenderer(renderer);
mRenderer.addSeriesRenderer(renderer1);
//mRenderer.addSeriesRenderer(renderer2);
mRenderer.addSeriesRenderer(renderer3);
mRenderer.setPointSize(10f);
String[] types = new String[] { ScatterChart.TYPE,ScatterChart.TYPE,LineChart.TYPE};
final GraphicalView lv = ChartFactory.getCombinedXYChartView(this, dataset, mRenderer, types);
// final GraphicalView lv = ChartFactory.getScatterChartView(this, dataset, mRenderer);
return lv;
}
AChartEngine is for displaying charts of data and not for displaying graphs. I suggest you add your values to the series, with X in ascending order, otherwise you will get unpredictable behavior.