如何使用 MPAndroidChart 获取选定栏 x-axis 的值?
How to get selected bar x-axis value using MPAndroidChart?
我在我的 Android 图表应用程序中使用 MPAndroidChart 库,我需要显示一个标题包含所选栏的 x-axis 值的对话框。
我将此 wiki entry 用于条形图中条形的点击事件。但现在我需要将选定的栏 x-axis 值作为标题。谁能告诉我如何实现它?
使用 OnChartValueSelectedListener
:
@Override
public void onValueSelected(Entry e, Highlight h) {
final String x = chart.getXAxis().getValueFormatter().getFormattedValue(e.getX(), chart.getXAxis());
}
Highlight
对象 包含有关所选位置的附加信息,例如所选值的 dataSetIndex、x 和 y-position,以像素为单位,选定的堆叠值(在堆叠条形图中),...
更新:对于 MPAndroidChart 3.x.x,以下工作按照 :
chart.setOnChartValueSelectedListener(new OnChartValueSelectedListener() {
@Override
public void onValueSelected(Entry e, Highlight h) {
chart.getXAxis().getValueFormatter().getFormattedValue(e.getX(), chart.getXAxis());
}
@Override
public void onNothingSelected() {
}
});
使用 onValueSelected:
public void onValueSelected(Entry e, int dataSetIndex, Highlight h) {
int position = e.getXIndex();
Log.d("positin", position );
//XValue
final String selectedValue=barchart.getXAxis().getValues().get(position);
Log.d("selctdX", selectedValue);
//YValue
final String selectedYValue = String.valueOf(e.getVal());
Log.d("selctdY", selectedValue);
}
您可以使用此代码获取所选柱的位置、x 轴值和 ya 轴值。
我在我的 Android 图表应用程序中使用 MPAndroidChart 库,我需要显示一个标题包含所选栏的 x-axis 值的对话框。
我将此 wiki entry 用于条形图中条形的点击事件。但现在我需要将选定的栏 x-axis 值作为标题。谁能告诉我如何实现它?
使用 OnChartValueSelectedListener
:
@Override
public void onValueSelected(Entry e, Highlight h) {
final String x = chart.getXAxis().getValueFormatter().getFormattedValue(e.getX(), chart.getXAxis());
}
Highlight
对象 包含有关所选位置的附加信息,例如所选值的 dataSetIndex、x 和 y-position,以像素为单位,选定的堆叠值(在堆叠条形图中),...
更新:对于 MPAndroidChart 3.x.x,以下工作按照
chart.setOnChartValueSelectedListener(new OnChartValueSelectedListener() {
@Override
public void onValueSelected(Entry e, Highlight h) {
chart.getXAxis().getValueFormatter().getFormattedValue(e.getX(), chart.getXAxis());
}
@Override
public void onNothingSelected() {
}
});
使用 onValueSelected:
public void onValueSelected(Entry e, int dataSetIndex, Highlight h) {
int position = e.getXIndex();
Log.d("positin", position );
//XValue
final String selectedValue=barchart.getXAxis().getValues().get(position);
Log.d("selctdX", selectedValue);
//YValue
final String selectedYValue = String.valueOf(e.getVal());
Log.d("selctdY", selectedValue);
}
您可以使用此代码获取所选柱的位置、x 轴值和 ya 轴值。