Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MPAndroidChart:组合图表_Android_Mpandroidchart - Fatal编程技术网

MPAndroidChart:组合图表

MPAndroidChart:组合图表,android,mpandroidchart,Android,Mpandroidchart,我正在使用 我想使用组合图表创建这样的图表: 可能吗?我试过了,但似乎不起作用,因为 这些条目不像我预期的那样有效。你不能说一个条目已经被删除了 x轴上的值为2,y轴上的值为300。我也不能创造 两个不同的y轴,一个用于杆,一个用于线 奇怪的是,MPAndroidChart首先将所有x值相加 在那之后,所有的y值,你都不可能控制 哪个y值属于哪个x值,因为它只是插入 y值按其出现顺序排列,并与下一个值关联 x值 有什么方法可以用MPAndroidChart创建这样的图表吗。 事实上,我不想因为

我正在使用

我想使用
组合图表
创建这样的图表:

可能吗?我试过了,但似乎不起作用,因为 这些条目不像我预期的那样有效。你不能说一个条目已经被删除了 x轴上的值为2,y轴上的值为300。我也不能创造 两个不同的y轴,一个用于杆,一个用于线

奇怪的是,MPAndroidChart首先将所有x值相加 在那之后,所有的y值,你都不可能控制 哪个y值属于哪个x值,因为它只是插入 y值按其出现顺序排列,并与下一个值关联 x值

有什么方法可以用MPAndroidChart创建这样的图表吗。 事实上,我不想因为这个原因而被迫使用谷歌图表 所需的互联网连接(但创建这种图表会
您可以创建一个自定义类来扩展视图,并在onDraw方法中为条形图创建所需高度、宽度和位置的矩形。对于那些明显的线条,设置笔划以使其更加可见

我使用自定义视图在我的应用程序中创建了条,并在中创建了行。

  • 可以有两个不同的轴
  • 您可以控制哪个y值属于哪个x值(当然!)
  • 查看
  • 看起来是这样的:

更新:v3.0.0+

CombinedChart
的示例已经扩展,现在允许堆叠条形图和分组条形图与其他图表类型一起使用

为组合图表设置数据的本质是
CombinedData
类。它可以填充各种其他数据,例如
LineData
BarData
等:

    CombinedData data = new CombinedData();

    data.setData(generateLineData()); // set LineData...
    data.setData(generateBarData()); // set BarData...
    data.setData(generateBubbleData());
    data.setData(generateScatterData());
    data.setData(generateCandleData());

    chart.setData(data);
    chart.invalidate();

如何创建例如LineData,可在文档中找到。

由于接受的aswer已断开链接,您应使用:

<com.github.mikephil.charting.charts.CombinedChart
        android:id="@+id/chart"/>
编辑:
原始答案已经修改,以反映我刚才写的内容。链接已经更新,并且添加了一些代码。

是的,我发现了。但这仅仅是因为你有12个值用于折线图,12个值用于条形图。如果你只是有例如4的酒吧,他们将设置为1月,2月,3月和4月,即使他们属于七月,九月或okt。你知道我的意思吗?我想MPAndroidChart最大的问题是你不能建立一个网格,而只是用x和y坐标来设置你的值。这是不正确的。如果只有4个条形值,则它们将显示在您将其x索引设置为的任何位置。如果你将x指数设置为0-1-2-3,那么是的,它们将出现在1-2-3-4月。如果你将x指数设置为1-3-7-11,它们将出现在2-4-8-12月。哦,天哪,你是对的。我可以将条和行数据放入一个列表中,对其进行排序,并在列表中获取索引。THX组合图表部分没有任何内容:正如@ban geoengineering提到的,您链接到的“文档”是空白的。它有合并图表的标题,但该部分没有任何内容。
        LineData linearData = new LineData(set1);
        // Set you LinearData

        BarData barData = new BarData(set2);
        // Set you LinearData

        CombinedData data=new CombinedData();
        data.setData(linearData);
        data.setData(barData);