标签: mpandroidchart

MPAndroidChart如何设置标签颜色?

得到以下代码:

    graph = (LineChart) convertView.findViewById(R.id.graph);
    graph.getPaint(Chart.PAINT_LEGEND_LABEL).setColor(Color.BLUE);
    graph.getPaint(Chart.PAINT_YLABEL).setColor(Color.BLUE);
    graph.getPaint(Chart.PAINT_XLABEL).setColor(Color.BLUE);
Run Code Online (Sandbox Code Playgroud)

但是仍然是X/Y值标签的颜色以及传说中的标签保持黑色.我错过了什么吗?还有其他方法来设置这些颜色吗?

例如,这一行可以工作,并为每个数据点生成蓝色值标签:

    graph.getPaint(Chart.PAINT_VALUES).setColor(Color.BLUE);
Run Code Online (Sandbox Code Playgroud)

提前致谢!

android mpandroidchart

7
推荐指数
1
解决办法
1万
查看次数

MPAndroidChart MarkerView

我打算在MPAndroidChart的折线图中查找特定点,然后显示标记以在按下按钮后突出显示该点.给出的示例是标记仅在触摸事件后显示,在我的情况下是不同的.我尝试下面的代码,但无济于事,可以请一些人教我,我会很感激.

Highlight h = new Highlight((int) valIndex, linechart2.getData().getDataSetCount());
        linechart2.highlightValue(h, true);
mv2.refreshContent2(valueYAxis.get((int) valIndex), h);
linechart2.getMarkerView();
linechart2.setDrawMarkerViews(true);
linechart2.getData().setHighlightEnabled(true);
//        RefreshChart();
linechart2.invalidate();
Run Code Online (Sandbox Code Playgroud)

android mpandroidchart

7
推荐指数
1
解决办法
3094
查看次数

如何从android中的MPcharts的水平条形图中获取条形点击事件?

我正在使用MPAndroidChart库.

我在仪表板中使用了水平条形图.

我想通过单击该图表的特定栏来导航到另一个活动.

我怎样才能做到这一点??

java android mpandroidchart

6
推荐指数
1
解决办法
2627
查看次数

如何使用MPAndroid图表库跳过折线图中特定索引的值?

我正在使用MPAndroid图表库来绘制折线图,​​我在LineChart上设置动态数据,但有时我得到的数据为某些索引的值为0.0,我不希望在任何索引上显示0.0值.如何跳过具有0.0值的索引.

ArrayList<Entry> entries = new ArrayList<>();
       entries.add(new Entry(23.00f, 0));
       entries.add(new Entry(40.00f, 1));
       entries.add(new Entry(00.00f, 2)); // want to skip this index 2(Mar)
       entries.add(new Entry(00.00f, 3)); // want to skip this index 3 (Apr)
       entries.add(new Entry(94.00f, 4));
       entries.add(new Entry(20.00f, 5));
Run Code Online (Sandbox Code Playgroud)

现在我变得像这样 在此输入图像描述

但我想得到一些像这样的东西

在此输入图像描述

有什么想法吗?

谢谢

java charts android mpandroidchart

6
推荐指数
1
解决办法
980
查看次数

如何在 MPAndroidChart 中添加 x 轴作为日期时间标签?

我在我的项目中为温度报告实现了折线图(MPAndroidChart 库)。在 X 轴上应该绘制日期时间,并且应该绘制 Y 轴温度。

我只是在 X 轴标签中将日期时间添加为字符串,但它已折叠。所以请任何人指导我。

android mpandroidchart

6
推荐指数
2
解决办法
2万
查看次数

MPandroid x 轴标签与条形图不对齐

我的 XAxis 值没有对齐。我应该修改什么设置?

x 轴未对齐

以下是到目前为止我在代码中的内容, .setLabelsToSkip 不起作用,因为我使用的是 3.0.1 版。

XAxis xAxis = mChart.getXAxis();
    xAxis.setTypeface(mTfLight);
    xAxis.setGranularity(1f);
    xAxis.setCenterAxisLabels(true);
    xAxis.setDrawLabels(true);
    xAxis.setGranularity(1f);
    xAxis.setGranularityEnabled(true);
    xAxis.setPosition(XAxis.XAxisPosition.BOTTOM);
    xAxis.setTextColor(Color.WHITE);
    xAxis.setTextSize(15);
Run Code Online (Sandbox Code Playgroud)

这是我的 LabelFormatter 类:

import com.github.mikephil.charting.components.AxisBase;
import com.github.mikephil.charting.formatter.IAxisValueFormatter;

public class LabelFormatter implements IAxisValueFormatter {
private final String[] mLabels;

public LabelFormatter(String[] labels) {
    mLabels = labels;
}

@Override
public String getFormattedValue(float value, AxisBase axis) {
    return mLabels[(int) value];
}
}
Run Code Online (Sandbox Code Playgroud)

这是我的主要活动 setdata 方法:

    private void setData() {
    ArrayList<BarEntry> entries = new ArrayList<>();
    String labels[]=new String[5];
    for (Cars c : …
Run Code Online (Sandbox Code Playgroud)

android mpandroidchart

6
推荐指数
1
解决办法
3540
查看次数

如何使CombinedChart在MPAndroidChart上有两个不同的比例?

我有一个CombinedChart,我希望LineChart将左轴作为参考,BarChart并将右轴作为参考,但我无法得到它.

我正在尝试以下代码:

barDataSet.setAxisDependency(YAxis.AxisDependency.RIGHT);
lineDataSet.setAxisDependency(YAxis.AxisDependency.LEFT);
Run Code Online (Sandbox Code Playgroud)

但现在两个图表(LineChartBarChart)都在左边(混合它们,右轴已经消失).

左右轴具有不同的粒度.

如何才能正确地将每个图表作为一个不同的Y轴(分别为左或右)作为参考?

提前致谢!

android mpandroidchart

6
推荐指数
1
解决办法
817
查看次数

Android MP Pie Chart 如何从饼图中删除文本和值

实际图像

我如何使用MPAndroidChart实现这一目标

使用版本:com.github.PhilJay:MPAndroidChart:v3.1.0-alpha 为图例和饼图边距添加代码:

private void setPieChartData() {
        ///sf/answers/3538604191/
        pieChart.setUsePercentValues(true);
        pieChart.getDescription().setEnabled(false);
        pieChart.setExtraOffsets(5,5,10,5);
        pieChart.setDragDecelerationFrictionCoef(0.9f);
        pieChart.setDrawCenterText(false);
        pieChart.setDrawHoleEnabled(false);
        //pieChart.animateY(1000, Easing.EasingOption.EaseInOutCubic);
        ArrayList<PieEntry> yValues = new ArrayList<>();
        yValues.add(new PieEntry(34f,"Ilala"));
        yValues.add(new PieEntry(56f,"Temeke"));
        yValues.add(new PieEntry(66f,"Kinondoni"));
        yValues.add(new PieEntry(45f,"Kigamboni"));
        yValues.add(new PieEntry(45f,"Kigamboni2"));
        pieChart.setDrawEntryLabels(false);

        PieDataSet dataSet = new PieDataSet(yValues, "Desease Per Regions");
        dataSet.setSliceSpace(0.1f);
        dataSet.setDrawValues(false);
        dataSet.setSelectionShift(5f);
        dataSet.setColors(ColorTemplate.VORDIPLOM_COLORS);

        PieData pieData = new PieData((dataSet));
        pieData.setValueTextSize(10f);
        pieData.setValueTextColor(Color.BLACK);
        pieChart.setData(pieData);
        pieChart.setDrawSliceText(false);
        setLegend();
    }

    private void setLegend() {
        Legend l = pieChart.getLegend();
        l.setFormSize(10f); // set the size of the legend forms/shapes
        l.setForm(Legend.LegendForm.SQUARE); // set …
Run Code Online (Sandbox Code Playgroud)

android pie-chart mpandroidchart

6
推荐指数
2
解决办法
6256
查看次数

如何在相同的 x,y 值上管理多个标记视图

我在我的项目中使用了MPChart android 库,它满足了我的要求,但现在在我的项目中进行了新的增强,我遇到了一些问题。

  1. 如何使用带方向箭头的标记视图(意味着如果左侧没有空间,则标记视图应该在右侧)?

  2. 在我的项目中,可以有多个点使用相同的 x,y 值。那么如何为这些具有相同 x,y 值的点显示多个标记视图?

使用此解决方案(经过一些修改),我可以获得相同 x,y 值的多个标记视图,但它们相互覆盖,因此基本上用户只能看到一个标记视图。

期待 在此处输入图片说明

结果- 如果左侧没有足够的空间,则将隐藏点隐藏在标记视图下方。如何将标记视图移动到点的左/右/顶部/底部。 在此处输入图片说明

charts android mpandroidchart

6
推荐指数
1
解决办法
176
查看次数

如何根据 y 轴值是正值还是负值更改 MPAndroidChart 折线图的线条和填充颜色

想知道是否可以根据 y 轴值是正值还是负值来更改折线图的线条和填充颜色。下面是一个例子

在此输入图像描述

下面是我可以使用以下代码实现的目标

在此输入图像描述

    private fun setUpLineChart() {
        val lineData = getDataSet()
        view.lineChart.apply {
            data = lineData
            description.isEnabled = false
            setScaleEnabled(false)
            setTouchEnabled(false)
            legend.isEnabled = false
            axisLeft.apply {
                setDrawLabels(false)
                setDrawGridLines(false)
                setDrawAxisLine(false)
                spaceBottom = 30f
            }
            axisRight.apply {
                setDrawLabels(false)
                setDrawGridLines(false)
                setDrawAxisLine(false)
            }
            xAxis.apply {
                setDrawLabels(false)
                setDrawGridLines(false)
                setDrawAxisLine(false)
            }
            animateXY(700, 1000, Easing.EaseInOutQuad)
        }
    }

    private fun getDataSet(): LineData {
        val entries = mutableListOf<Entry>()
        val dataList = listOf(1, 20, -20, 33, 54, 7, -18, 2)

        dataList.forEachIndexed { index, element ->
            entries.add(Entry(index.toFloat(), element.toFloat()))
        }

        val …
Run Code Online (Sandbox Code Playgroud)

android mpandroidchart

6
推荐指数
1
解决办法
4842
查看次数

标签 统计

android ×10

mpandroidchart ×10

charts ×2

java ×2

pie-chart ×1