【发布时间】:2015-06-30 11:21:26
【问题描述】:
我正在构建一个要在其中显示饼图的应用程序,一切都很好,但我找到了
无法解析方法 setDisplayChartValues(true)
我已经尝试过这些答案,但它对我不起作用:-
Android achartengine setDisplayChartValues crashes App
Android achartengine setDisplayChartValues crashes App
Android achartengine setDisplayChartValues not working for single value
我的piechart.java 是:-
import android.graphics.Color;
import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.Toast;
import org.achartengine.ChartFactory;
import org.achartengine.GraphicalView;
import org.achartengine.model.CategorySeries;
import org.achartengine.model.SeriesSelection;
import org.achartengine.renderer.DefaultRenderer;
import org.achartengine.renderer.SimpleSeriesRenderer;
import java.text.DecimalFormat;
public class piechart extends ActionBarActivity {
private GraphicalView mChart;
private String[] code;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_piechart);
openChart();
}
private void openChart() {
// Pie Chart Section Names
String[] code = new String[] { "Froyo", "Gingerbread",
"IceCream Sandwich", "Jelly Bean", "KitKat" };
// Pie Chart Section Value
double[] distribution = { 0.5, 9.1, 7.8, 45.5, 33.9 };
// Color of each Pie Chart Sections
int[] colors = { Color.BLUE, Color.MAGENTA, Color.GREEN, Color.CYAN,
Color.RED };
// Instantiating CategorySeries to plot Pie Chart
CategorySeries distributionSeries = new CategorySeries(
" Android version distribution as on October 1, 2012");
for (int i = 0; i < distribution.length; i++) {
// Adding a slice with its values and name to the Pie Chart
distributionSeries.add(code[i], distribution[i]);
}
// Instantiating a renderer for the Pie Chart
DefaultRenderer defaultRenderer = new DefaultRenderer();
for (int i = 0; i < distribution.length; i++) {
SimpleSeriesRenderer seriesRenderer = new SimpleSeriesRenderer();
seriesRenderer.setColor(colors[i]);
seriesRenderer.setDisplayChartValues(true);
//Adding colors to the chart
defaultRenderer.setBackgroundColor(Color.BLACK);
defaultRenderer.setApplyBackgroundColor(true);
// Adding a renderer for a slice
defaultRenderer.addSeriesRenderer(seriesRenderer);
}
defaultRenderer
.setChartTitle("Android version distribution as on December 1, 2014. ");
defaultRenderer.setChartTitleTextSize(20);
defaultRenderer.setZoomButtonsVisible(false);
// this part is used to display graph on the xml80
// Creating an intent to plot bar chart using dataset and
// multipleRenderer
// Intent intent = ChartFactory.getPieChartIntent(getBaseContext(),
// distributionSeries , defaultRenderer, "AChartEnginePieChartDemo");
// Start Activity
// startActivity(intent);
LinearLayout chartContainer = (LinearLayout) findViewById(R.id.chart);
// remove any views before u paint the chart90
chartContainer.removeAllViews();
// drawing pie chart
mChart = ChartFactory.getPieChartView(getBaseContext(),
distributionSeries, defaultRenderer);
// adding the view to the linearlayout
chartContainer.addView(mChart);
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_piechart, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
//noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
}
【问题讨论】:
-
我也有同样的问题……你解决了吗?怎么样?
标签: java android android-studio achartengine pie-chart