如何隐藏MPAndroidChart中的图例和轴?

时间:2015-03-13 11:15:45

标签: android mpandroidchart

他们是否有可能隐藏这张照片中的所有圆形物品。

enter image description here

我使用了以下代码,

public void setDataList(List<HorizontalBarChartData> dataList, Resources resources) {

    ArrayList<String> categories = new ArrayList<String>();
    ArrayList<BarEntry> values = new ArrayList<BarEntry>();
    ArrayList<BarDataSet> dataSets = new ArrayList<BarDataSet>();
    BarDataSet set1;
    for (int i = 0; i < dataList.size(); i++) {
        categories.add(dataList.get(i).getName());
        values.add(new BarEntry(dataList.get(i).getValue(), i));
    }

    /*set1 = new BarDataSet(values, "Income, Expense, Disposable Income");*/
    set1 = new BarDataSet(values, "Category 1, Category 2, Category 3");
    set1.setBarSpacePercent(35f);
    set1.setColors(new int[]{resources.getColor(R.color.cyan_blue), resources.getColor(R.color.vermilion_tint), resources.getColor(R.color.sea_green)});
    dataSets.add(set1);

    BarData data = new BarData(categories, dataSets);
    data.setValueTextSize(10f);

    horizontalBarChart.setData(data);
}

更新

如何隐藏此图片中的圆角部分?

enter image description here

9 个答案:

答案 0 :(得分:135)

是的,可以,只需使用以下代码:

mChart.setDescription("");    // Hide the description
mChart.getAxisLeft().setDrawLabels(false);
mChart.getAxisRight().setDrawLabels(false);
mChart.getXAxis().setDrawLabels(false);

mChart.getLegend().setEnabled(false);   // Hide the legend 

答案 1 :(得分:4)

根据this answer

mChart.getXAxis().setDrawLabels(false);将隐藏整个X轴(根据此问题的要求)。

为了定位X轴,以下代码可以正常工作。

    XAxis xAxis = mChart.getXAxis();
    xAxis.setPosition(XAxis.XAxisPosition.BOTTOM);

位置可以设置为

  • BOTTOM
  • BOTH_SIDED
  • BOTTOM_INSIDE
  • TOP
  • TOP_INSIDE

如果您只想隐藏特定的侧轴而不是隐藏整个轴,这会有所帮助。

答案 2 :(得分:2)

要隐藏说明,请使用此

mChart.getDescription().setEnabled(false)

答案 3 :(得分:1)

下面的代码适用于PieChart。尝试为您的图表获取相同的方法。

Legend l = mChart.getLegend();
l.setPosition(LegendPosition.NONE);

答案 4 :(得分:1)

以下代码适用于所有图表

Legend l = mchart.getLegend(); l.setEnabled(false);

答案 5 :(得分:1)

似乎SecondaryButtonText="Cancel" PrimaryButtonClick="ContentDialog_PrimaryButtonClick" SecondaryButtonClick="ContentDialog_SecondaryButtonClick" Width="Auto" MinWidth="1000" Opened="ContentDialog_Opened" Closed="ContentDialog_Closed" DataContext="{Binding Source={StaticResource ViewModelLocator}, Path=ClockDialog}"> <Grid HorizontalAlignment="Stretch" MinWidth="900"> <Grid.ColumnDefinitions> <ColumnDefinition Width="1.3*"/> <ColumnDefinition Width="4*" MinWidth="200"/> <ColumnDefinition Width="1.3*"/> <ColumnDefinition Width="4*" MinWidth="200"/> </Grid.ColumnDefinitions> <Grid Grid.Column="0"> <StackPanel Orientation="Vertical"> <TextBlock Margin="0,6" Text="Type:" Style="{StaticResource CCBlackTextBlock}" HorizontalAlignment="Right"/> <TextBlock Margin="0,8" Text="Mfg:" Style="{StaticResource CCBlackTextBlock}" HorizontalAlignment="Right"/> 不再接受字符串。

该方法现在接受描述类的实例,如下所示:     mChart.SetDescription()

因此,要修改或删除图表描述,您可以像下面这样做

mChart.setDescription(Description description)

答案 6 :(得分:0)

chart=(LineChart) findViewById(R.id.Chart);
chart.getLegend().setEnabled(false); // for hiding square on below graph

答案 7 :(得分:0)

MPAndroidChart:v3.1.0 的 Kotlin 解决方案

chart.description.isEnabled = false // hide the description
chart.legend.isEnabled = false // hide the legend 

chart.xAxis.setDrawLabels(false) // hide bottom label
chart.axisLeft.setDrawLabels(false) // hide left label
chart.axisRight.setDrawLabels(false) // hide right label

答案 8 :(得分:0)

我遇到了问题,当我使用 mChart.getLegend().setEnabled(false)

时,底部的 xAxis 标签被切断了

现在我用 chart.getLegend().setForm(Legend.LegendForm.NONE); 代替,标签不再被剪掉