그래프의 형태로 내 데이터를 나타내는 데 achartengine-1.0.0을 사용하고 있습니다. 특성 빌드 경로에서 jar 파일의 경로를 제공했습니다. 주문 및 가져 오기 탭에서 achartengine-1.0.0.jar 옵션을 선택했습니다. 그러나 내 응용 프로그램을 디버깅 할 때 "원본 첨부 파일에 ChartFactory.class 파일의 원본이 포함되어 있지 않습니다."라는 메시지가 계속 나타납니다. 코드는 다음과 같습니다.소스 첨부 파일에 ChartFactory.class 파일의 소스가 포함되어 있지 않습니다.
import org.achartengine.ChartFactory;
import org.achartengine.GraphicalView;
import org.achartengine.chart.PointStyle;
import org.achartengine.chart.BarChart.Type;
import org.achartengine.model.XYMultipleSeriesDataset;
import org.achartengine.model.XYSeries;
import org.achartengine.renderer.XYMultipleSeriesRenderer;
import org.achartengine.renderer.XYSeriesRenderer;
public class MainActivity extends Activity {
private static final int SERIES_NR = 2;
public final android.content.Context Context = MainActivity.this;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button ReportGraph=(Button)findViewById(R.id.ReportGraph);
ReportGraph.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
RelativeLayout relChartView=(RelativeLayout)findViewById(R.id.ChartView);
GraphicalView GraphChartView = ChartFactory.getBarChartView(getApplicationContext(), getDemoDataset(), getDemoRenderer(),Type.DEFAULT);
//ChartFactory.getLineChartIntent(this, getDemoDataset(), getDemoRenderer());
relChartView.addView(GraphChartView);
}
});
}
private XYMultipleSeriesDataset getDemoDataset() {
XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset();
final int nr = 7;
Random r = new Random();
for (int i = 0; i < SERIES_NR; i++) {
XYSeries series = new XYSeries("Demo series " + (i + 1));
for (int k = 0; k < nr; k++) {
series.add(k, 20 + r.nextInt() % 100);
}
dataset.addSeries(series);
}
return dataset;
}
private XYMultipleSeriesRenderer getDemoRenderer() {
XYMultipleSeriesRenderer renderer = new XYMultipleSeriesRenderer();
renderer.setAxisTitleTextSize(12);
renderer.setChartTitleTextSize(12);
renderer.setLabelsTextSize(15);
renderer.setLegendTextSize(15);
renderer.setPointSize(5f);
renderer.setMargins(new int[] { 20, 30, 15, 0 });
XYSeriesRenderer r = new XYSeriesRenderer();
r.setColor(Color.BLUE);
r.setPointStyle(PointStyle.DIAMOND);
r.setFillBelowLine(false);
r.setFillPoints(true);
renderer.addSeriesRenderer(r);
setChartSettings(renderer);
return renderer;
}
private void setChartSettings(XYMultipleSeriesRenderer renderer) {
renderer.setChartTitle("Chart demo");
renderer.setXTitle("x values");
renderer.setYTitle("y values");
renderer.setApplyBackgroundColor(false);
renderer.setRange(new double[] {0,6,-70,40});
renderer.setFitLegend(false);
renderer.setAxesColor(Color.BLACK);
renderer.setShowGrid(true);
renderer.setXAxisMin(0.5);
renderer.setXAxisMax(10.5);
renderer.setYAxisMin(0);
renderer.setZoomEnabled(false);
renderer.setYAxisMax(100);
}
}
아무쪼록 도와주세요. 어떤 도움을 주시면 감사하겠습니다 !!! 감사합니다. .
해결책을 찾았습니다! JD-GUI 디 컴파일러를 사용하여 jar 파일을 디 컴파일하고 모든 소스 파일을 achartengine-1.0.0.src로 저장하고 src 경로를 Build Path에 추가했습니다. 이제 예외없이 응용 프로그램을 디버깅 할 수 있습니다. – Mahe