如何解决单击按钮后更改饼图 (AnyChart)
我正在尝试开发一个应用程序,一旦单击按钮,AnyChart 中的饼图就会显示新数据。我已经检查过按钮是否工作正常,但是当我点击按钮时,每次都会显示相同的 pir 图。
这是我的java代码:
public class MainActivity extends AppCompatActivity {
AnyChartView anyChartView,anyChartView1,anyChartView2,anyChartView3;
private Button button1,button2,button3,button4;
String [] months = {"Temp","Flow","Pres","Elec"};
int [] earning = {500,800,300,900};
String [] pres1 = {"Temp","Elec"};
int [] pres2 = {200,100,1000,400};
String [] elec1 = {"Temp","Elec"};
int [] elec2 = {600,700,900,1000};
String [] flow1 = {"Temp","Elec"};
int [] flow2 = {4000,400,500};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
anyChartView = findViewById(R.id.any_chart_view);
anyChartView1 = findViewById(R.id.any_chart_view1);
anyChartView2 = findViewById(R.id.any_chart_view2);
anyChartView3 = findViewById(R.id.any_chart_view3);
button1 = (Button) findViewById(R.id.button1);
button2 = (Button) findViewById(R.id.button2);
button3 = (Button) findViewById(R.id.button3);
button4 = (Button) findViewById(R.id.button4);
button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
setupPieChart();
}
});
button2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
setupPieChart1();
}
});
button3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
setupPieChart2();
}
});
button4.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
setupPieChart3();
}
});
}
private void setupPieChart3() {
Pie pie3 = AnyChart.pie();
APIlib.getInstance().setActiveAnyChartView(anyChartView);
List<DataEntry> dataEntries1 = new ArrayList<>();
for (int j = 0; j < flow1.length; j++){
dataEntries1.add(new ValueDataEntry(flow1[j],flow2[j]));
}
pie3.data(dataEntries1);
pie3.title("Flow");
anyChartView.setChart(pie3);
}
private void setupPieChart2() {
Pie pie2 = AnyChart.pie();
APIlib.getInstance().setActiveAnyChartView(anyChartView3);
List<DataEntry> dataEntries2 = new ArrayList<>();
for (int k = 0; k < elec1.length; k++){
dataEntries2.add(new ValueDataEntry(elec1[k],elec2[k]));
}
pie2.data(dataEntries2);
pie2.title("Electricity");
anyChartView3.setChart(pie2);
}
private void setupPieChart1() {
Pie pie1 = AnyChart.pie();
APIlib.getInstance().setActiveAnyChartView(anyChartView2);
List<DataEntry> dataEntries3 = new ArrayList<>();
for (int l = 0; l < pres1.length; l++){
dataEntries3.add(new ValueDataEntry(pres1[l],pres2[l]));
}
pie1.data(dataEntries3);
pie1.title("Pressure");
anyChartView2.setChart(pie1);
}
private void setupPieChart() {
Pie pie = AnyChart.pie();
APIlib.getInstance().setActiveAnyChartView(anyChartView1);
List<DataEntry> dataEntries = new ArrayList<>();
for (int i = 0; i < months.length; i++){
dataEntries.add(new ValueDataEntry(months[i],earning[i]));
}
pie.data(dataEntries);
pie.title("Temperature");
anyChartView1.setChart(pie);
}
}
主要布局:
<com.anychart.AnyChartView
android:id="@+id/any_chart_view"
android:layout_width="363dp"
android:layout_height="467dp"
android:layout_marginTop="19dp"
android:layout_marginBottom="148dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/horizontalScrollView" />
<com.anychart.AnyChartView
android:id="@+id/any_chart_view1"
android:layout_width="363dp"
android:layout_height="467dp"
android:layout_marginTop="19dp"
android:layout_marginBottom="148dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/horizontalScrollView" />
<com.anychart.AnyChartView
android:id="@+id/any_chart_view2"
android:layout_width="363dp"
android:layout_height="467dp"
android:layout_marginTop="19dp"
android:layout_marginBottom="148dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/horizontalScrollView" />
<com.anychart.AnyChartView
android:id="@+id/any_chart_view3"
android:layout_width="363dp"
android:layout_height="467dp"
android:layout_marginTop="19dp"
android:layout_marginBottom="148dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/horizontalScrollView" />
<HorizontalScrollView
android:id="@+id/horizontalScrollView"
android:layout_width="410dp"
android:layout_height="81dp"
android:layout_marginTop="16dp"
android:layout_marginBottom="19dp"
app:layout_constraintBottom_toTopOf="@+id/any_chart_view"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="wrap_content"
android:layout_height="match_parent">
<Button
android:id="@+id/button1"
android:layout_width="101dp"
android:layout_height="62dp"
android:layout_marginTop="8dp"
android:layout_marginBottom="9dp"
app:backgroundTint="#2196F3"
android:gravity="center"
android:text="@string/Temp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<Button
android:id="@+id/button2"
android:layout_width="101dp"
android:layout_height="62dp"
android:layout_marginStart="12dp"
android:layout_marginTop="8dp"
android:layout_marginBottom="9dp"
app:backgroundTint="#2196F3"
android:gravity="center"
android:text="@string/pres"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toEndOf="@id/button1"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.0" />
<Button
android:id="@+id/button3"
android:layout_width="101dp"
android:layout_height="62dp"
android:layout_marginStart="12dp"
android:layout_marginTop="8dp"
android:layout_marginBottom="9dp"
android:gravity="center"
android:text="@string/Elec"
app:backgroundTint="#2196F3"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toEndOf="@id/button2"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.0" />
<Button
android:id="@+id/button4"
android:layout_width="101dp"
android:layout_height="62dp"
android:layout_marginStart="12dp"
android:layout_marginTop="8dp"
app:backgroundTint="#2196F3"
android:layout_marginBottom="9dp"
android:gravity="center"
android:text="@string/flow"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toEndOf="@id/button3"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.0" />
</androidx.constraintlayout.widget.ConstraintLayout>
</HorizontalScrollView>
</androidx.constraintlayout.widget.ConstraintLayout>
我想在单击不同按钮后更改图表。任何帮助将不胜感激。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。