Android 如何使用AChartEngine库重新绘制或刷新条形图
这是我的代码。我想刷新或重画条形图。但它会在图形中显示旧条形图和新条形图。我想在单击按钮时只显示图形中的新条形图 代码:Android 如何使用AChartEngine库重新绘制或刷新条形图,android,bar-chart,achartengine,Android,Bar Chart,Achartengine,这是我的代码。我想刷新或重画条形图。但它会在图形中显示旧条形图和新条形图。我想在单击按钮时只显示图形中的新条形图 代码: if(潮汐数据.length()>0){ 对于(int i=0;i31){ hrTime=String.valueOf(Integer.parseInt(hrTime)+1); TimeOne=hr时间; }否则{ TimeOne=hr时间; } }否则{ //检查最小值31,以便为圆形图添加1小时 如果(ckmin>31){ hrTime=String.valueOf(In
if(潮汐数据.length()>0){
对于(int i=0;i31){
hrTime=String.valueOf(Integer.parseInt(hrTime)+1);
TimeOne=hr时间;
}否则{
TimeOne=hr时间;
}
}否则{
//检查最小值31,以便为圆形图添加1小时
如果(ckmin>31){
hrTime=String.valueOf(Integer.parseInt(hrTime)+1);
TimeOne=hr时间;
}否则{
TimeOne=hr时间;
}
}
}
if(潮汐类型等信号情况(高)){
if(TimeOne.equals(“0”)){
tideHeight\u mtZero=Double.parseDouble(tideHeight\u mtOne\u字符串);
Log.e(“12345----->”,“+TimeOne”);
}
if(TimeOne.equals(“1”)){
tideHeight\u mtOne=Double.parseDouble(tideHeight\u mtOne\u字符串);
}
if(TimeOne.equals(“2”)){
tideHeight\u mtTwo=Double.parseDouble(tideHeight\u mtOne\u字符串);
}
如果(时间1等于(“3”)){
tideHeight\u mtThree=Double.parseDouble(tideHeight\u mtOne\u字符串);
}
如果(时间1等于(“4”)){
tideHeight\u mtFour=Double.parseDouble(tideHeight\u mtOne\u字符串);
}
如果(时间1等于(“5”)){
tideHeight\u mtFive=Double.parseDouble(tideHeight\u mtOne\u字符串);
}
如果(时间1等于(“6”)){
tideHeight\u mtSix=Double.parseDouble(tideHeight\u mtOne\u字符串);
}
如果(时间1等于(“7”)){
tideHeight\u mtSeven=Double.parseDouble(tideHeight\u mtOne\u字符串);
}
如果(时间1等于(“8”)){
tideHeight\u mtheight=Double.parseDouble(tideHeight\u mtOne\u字符串);
}
如果(时间1等于(“9”)){
tideHeight\u mtNine=Double.parseDouble(tideHeight\u mtOne\u字符串);
}
如果(时间1等于(“10”)){
tideHeight\u mtTen=Double.parseDouble(tideHeight\u mtOne\u字符串);
}
如果(时间1等于(“11”)){
tideHeight\u mtEleven=Double.parseDouble(tideHeight\u mtOne\u字符串);
}
如果(时间1等于(“12”)){
tideHeight\u mtTweelv=Double.parseDouble(tideHeight\u mtOne\u字符串);
}
如果(时间1等于(“13”)){
tideHeight\u mtTherteen=Double.parseDouble(tideHeight\u mtOne\u字符串);
}
如果(时间1等于(“14”)){
tideHeight\u mt14d=Double.parseDouble(tideHeight\u mtOne\u字符串);
}
如果(时间1等于(“15”)){
tideHeight\u mtFiveteen=Double.parseDouble(tideHeight\u mtOne\u字符串);
}
如果(时间1等于(“16”)){
tideHeight\u mtsixten=Double.parseDouble(tideHeight\u mtOne\u字符串);
}
如果(时间1等于(“17”)){
tideHeight\u mtSeventeen=Double.parseDouble(tideHeight\u mtOne\u字符串);
}
如果(时间1等于(“18”)){
tideHeight\u mt18g=Double.parseDouble(tideHeight\u mtOne\u字符串);
}
如果(时间1等于(“19”)){
tideHeight\u mt十九=Double.parseDouble(tideHeight\u mtOne\u字符串);
}
如果(时间1等于(“20”)){
tideHeight\u mtTweenty=Double.parseDouble(tideHeight\u mtOne\u字符串);
}
如果(时间1等于(“21”)){
tideHeight\u mtTweentyOne=Double.parseDouble(tideHeight\u mtOne\u字符串);
}
如果(TimeOne.equals)
if (tides_data.length() > 0) {
for (int i = 0; i < tides_data.length(); i++) {
String tide_type = "";
String tideTime = "";
String TimeOne = "";
String TimeAmPm = "";
String hrTime = " ", mnTime = "";
tideHeight_mtOne_string = "";
try {
tide_values = tides_data.getJSONObject(i);
tide_type = tide_values.optString("tide_type");
tideTime = tide_values.optString("tideTime");
tideHeight_mtOne_string = tide_values.optString("tideHeight_mt");
/*tideHeight_mtOne_string="5.58";
tide_type="HIGH";
tideTime="0:23 AM";*/
String timeArray[] = tideTime.split(" ");
TimeOne = timeArray[0];
TimeAmPm = timeArray[1];
//---if pm then add 12 h on currect time
if (TimeOne.contains(":")) {
String timeHourMin[] = TimeOne.split(":");
hrTime = timeHourMin[0];
mnTime = timeHourMin[1];
int ckmin = Integer.parseInt(mnTime);
if (TimeAmPm.equalsIgnoreCase("PM")) {
hrTime = String.valueOf(Integer.parseInt(hrTime) + 12);
//check min 31 so add 1 with hour for round figher
if (ckmin > 31) {
hrTime = String.valueOf(Integer.parseInt(hrTime) + 1);
TimeOne = hrTime;
} else {
TimeOne = hrTime;
}
} else {
//check min 31 so add 1 with hour for round figher
if (ckmin > 31) {
hrTime = String.valueOf(Integer.parseInt(hrTime) + 1);
TimeOne = hrTime;
} else {
TimeOne = hrTime;
}
}
}
if (tide_type.equalsIgnoreCase(HIGH)) {
if (TimeOne.equals("0")) {
tideHeight_mtZero = Double.parseDouble(tideHeight_mtOne_string);
Log.e("12345------>", "" + TimeOne);
}
if (TimeOne.equals("1")) {
tideHeight_mtOne = Double.parseDouble(tideHeight_mtOne_string);
}
if (TimeOne.equals("2")) {
tideHeight_mtTwo = Double.parseDouble(tideHeight_mtOne_string);
}
if (TimeOne.equals("3")) {
tideHeight_mtThree = Double.parseDouble(tideHeight_mtOne_string);
}
if (TimeOne.equals("4")) {
tideHeight_mtFour = Double.parseDouble(tideHeight_mtOne_string);
}
if (TimeOne.equals("5")) {
tideHeight_mtFive = Double.parseDouble(tideHeight_mtOne_string);
}
if (TimeOne.equals("6")) {
tideHeight_mtSix = Double.parseDouble(tideHeight_mtOne_string);
}
if (TimeOne.equals("7")) {
tideHeight_mtSeven = Double.parseDouble(tideHeight_mtOne_string);
}
if (TimeOne.equals("8")) {
tideHeight_mtEight = Double.parseDouble(tideHeight_mtOne_string);
}
if (TimeOne.equals("9")) {
tideHeight_mtNine = Double.parseDouble(tideHeight_mtOne_string);
}
if (TimeOne.equals("10")) {
tideHeight_mtTen = Double.parseDouble(tideHeight_mtOne_string);
}
if (TimeOne.equals("11")) {
tideHeight_mtEleven = Double.parseDouble(tideHeight_mtOne_string);
}
if (TimeOne.equals("12")) {
tideHeight_mtTweelv = Double.parseDouble(tideHeight_mtOne_string);
}
if (TimeOne.equals("13")) {
tideHeight_mtTherteen = Double.parseDouble(tideHeight_mtOne_string);
}
if (TimeOne.equals("14")) {
tideHeight_mtFourteen = Double.parseDouble(tideHeight_mtOne_string);
}
if (TimeOne.equals("15")) {
tideHeight_mtFiveteen = Double.parseDouble(tideHeight_mtOne_string);
}
if (TimeOne.equals("16")) {
tideHeight_mtSixteen = Double.parseDouble(tideHeight_mtOne_string);
}
if (TimeOne.equals("17")) {
tideHeight_mtSeventeen = Double.parseDouble(tideHeight_mtOne_string);
}
if (TimeOne.equals("18")) {
tideHeight_mtEighteen = Double.parseDouble(tideHeight_mtOne_string);
}
if (TimeOne.equals("19")) {
tideHeight_mtnineteen = Double.parseDouble(tideHeight_mtOne_string);
}
if (TimeOne.equals("20")) {
tideHeight_mtTweenty = Double.parseDouble(tideHeight_mtOne_string);
}
if (TimeOne.equals("21")) {
tideHeight_mtTweentyOne = Double.parseDouble(tideHeight_mtOne_string);
}
if (TimeOne.equals("22")) {
tideHeight_mtTwentytwo = Double.parseDouble(tideHeight_mtOne_string);
}
if (TimeOne.equals("23")) {
tideHeight_mtTwentythree = Double.parseDouble(tideHeight_mtOne_string);
}
if (TimeOne.equals("24")) {
tideHeight_mtTwentyfour = Double.parseDouble(tideHeight_mtOne_string);
}
if (TimeOne.equals("25")) {
tideHeight_mtTwentyfour = Double.parseDouble(tideHeight_mtOne_string);
}
} else {
//-----only for hightide section
}
} catch (Exception e) {
}
}
}
CategorySeries seriesHighTide = new CategorySeries("Bar1");
CategorySeries mCurrentSeries = seriesHighTide;
double[] y = {tideHeight_mtOne, tideHeight_mtTwo, tideHeight_mtThree, tideHeight_mtFour, tideHeight_mtFive, tideHeight_mtSix,
tideHeight_mtSeven, tideHeight_mtEight, tideHeight_mtNine, tideHeight_mtTen, tideHeight_mtEleven, tideHeight_mtTweelv,
tideHeight_mtTherteen, tideHeight_mtFourteen, tideHeight_mtFiveteen, tideHeight_mtSixteen, tideHeight_mtSeventeen,
tideHeight_mtEighteen, tideHeight_mtnineteen, tideHeight_mtTweenty, tideHeight_mtTweentyOne, tideHeight_mtTwentytwo,
tideHeight_mtTwentythree, tideHeight_mtTwentyfour, tideHeight_mtPm};
for (int i = 0; i < x.length; i++) {
// Log.e("Test----"+i,"=="+y[i]);
seriesHighTide.add(String.valueOf(i), y[i]);
}
dataSetHigh = new XYMultipleSeriesDataset(); // collection of series under one object.,there could any
dataSetHigh.addSeries(seriesHighTide.toXYSeries());
XYSeriesRenderer renderer = new XYSeriesRenderer(); // one renderer for one series
renderer.setColor(Color.GRAY);
renderer.setDisplayChartValues(true);
renderer.setChartValuesTextSize(20);
renderer.setChartValuesSpacing((float) 5.5d);
renderer.setLineWidth((float) 10.5d);
mRendererForHighTide = new XYMultipleSeriesRenderer(); // collection multiple values for one renderer or series
mRendererForHighTide.addSeriesRenderer(renderer);
mRendererForHighTide.setShowLegend(false);//Removing below space in graph
mRendererForHighTide.setZoomEnabled(false, false);
mRendererForHighTide.setPanEnabled(false);
mRendererForHighTide.setShowGridX(true); // this will show the grid in graph
mRendererForHighTide.setShowGridY(true);
mRendererForHighTide.setAntialiasing(true);
mRendererForHighTide.setBarSpacing(.2); // adding spacing between the line or stacks
mRendererForHighTide.setApplyBackgroundColor(true);
mRendererForHighTide.setLabelsTextSize(10);
mRendererForHighTide.setLegendTextSize(10);
mRendererForHighTide.setApplyBackgroundColor(true);
mRendererForHighTide.setBackgroundColor(Color.TRANSPARENT);
mRendererForHighTide.setMarginsColor(getResources().getColor(R.color.transparent_background));
mRendererForHighTide.setBarWidth(10);//set bar with and hight
mRendererForHighTide.setXAxisMin(0);
mRendererForHighTide.setYAxisMin(0);
mRendererForHighTide.setXAxisMax(25);
mRendererForHighTide.setYAxisMax(11);
mRendererForHighTide.addYTextLabel(-1, "-1mt");
mRendererForHighTide.addYTextLabel(-2, "-2mt");
mRendererForHighTide.addYTextLabel(-3, "-3mt");
mRendererForHighTide.addYTextLabel(-4, "-4mt");
mRendererForHighTide.addYTextLabel(-5, "-5mt");
mRendererForHighTide.addYTextLabel(-6, "-6mt");
mRendererForHighTide.addYTextLabel(-7, "-7mt");
mRendererForHighTide.addYTextLabel(-8, "-8mt");
mRendererForHighTide.addYTextLabel(-9, "-9mt");
mRendererForHighTide.addYTextLabel(-10, "-10mt");
mRendererForHighTide.addYTextLabel(0, "0mt");
mRendererForHighTide.addYTextLabel(1, "1mt");
mRendererForHighTide.addYTextLabel(2, "2mt");
mRendererForHighTide.addYTextLabel(3, "3mt");
mRendererForHighTide.addYTextLabel(4, "4mt");
mRendererForHighTide.addYTextLabel(5, "5mt");
mRendererForHighTide.addYTextLabel(6, "6mt");
mRendererForHighTide.addYTextLabel(7, "7mt");
mRendererForHighTide.addYTextLabel(8, "8mt");
mRendererForHighTide.addYTextLabel(9, "9mt");
mRendererForHighTide.addYTextLabel(10, "10mt");
mRendererForHighTide.setYLabelsPadding(15f);//spece between margin and yaxics line
mRendererForHighTide.setYLabelsColor(0, Color.BLACK);
mRendererForHighTide.setMargins(new int[]{30, 30, 30, 30});
// mRenderer.setShowCustomTextGrid(true);
mRendererForHighTide.setXLabels(0);
/*mRenderer.addXTextLabel(-1, "AM");*/
mRendererForHighTide.addXTextLabel(0, "AM");
mRendererForHighTide.addXTextLabel(1, "");
mRendererForHighTide.addXTextLabel(2, "2");
mRendererForHighTide.addXTextLabel(3, "");
mRendererForHighTide.addXTextLabel(4, "4");
mRendererForHighTide.addXTextLabel(5, "");
mRendererForHighTide.addXTextLabel(6, "6");
mRendererForHighTide.addXTextLabel(7, "");
mRendererForHighTide.addXTextLabel(8, "8");
mRendererForHighTide.addXTextLabel(9, "");
mRendererForHighTide.addXTextLabel(10, "10");
mRendererForHighTide.addXTextLabel(11, "");
mRendererForHighTide.addXTextLabel(12, "12");
mRendererForHighTide.addXTextLabel(13, "");
mRendererForHighTide.addXTextLabel(14, "2");
mRendererForHighTide.addXTextLabel(15, "");
mRendererForHighTide.addXTextLabel(16, "4");
mRendererForHighTide.addXTextLabel(17, "");
mRendererForHighTide.addXTextLabel(18, "6");
mRendererForHighTide.addXTextLabel(19, "");
mRendererForHighTide.addXTextLabel(20, "8");
mRendererForHighTide.addXTextLabel(21, "");
mRendererForHighTide.addXTextLabel(22, "10");
mRendererForHighTide.addXTextLabel(23, "");
mRendererForHighTide.addXTextLabel(24, "12");
mRendererForHighTide.addXTextLabel(25, "PM");
mRendererForHighTide.setXLabelsColor(Color.BLACK);
chartHighTide.removeAllViews();
chart3 = ChartFactory.getBarChartView(TideActivityDemo.this, dataSetHigh, mRendererForHighTide, BarChart.Type.DEFAULT);
chartHighTide.addView(chart3);