我正在使用MPAndroidChart library。
我想使用CombinedChart创建一个这样的图表:

这有可能吗?我试过了,但它似乎不起作用,因为条目并不像我预期的那样工作。您不能说一个条目在x轴上的值为2,在y轴上的值为300。我也不能创建两个不同的y轴,一个用于条,一个用于线。
奇怪的是,MPAndroidChart首先将所有x值相加,然后再将所有y值相加,您无法控制哪个y值属于哪个x值,因为它只是按y值出现的顺序插入y值,并将其与下一个x值关联。
有没有什么方法可以用MPAndroidChart创建这样的图表。实际上,我不想因为需要的互联网连接而被迫使用Google Charts (但创建这样的图表将与Google Charts完美配合)。
发布于 2015-06-26 15:24:11

更新:v3.0.0+
对CombinedChart的示例进行了扩展,现在允许堆叠条形图和分组条形图与其他图表类型一起使用。
为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可以在setting data文档中找到。
发布于 2015-06-26 02:34:51
您可以创建一个自定义类来扩展视图,并在onDraw方法中为条形图创建所需高度、宽度和位置的矩形。至于线条,这是显而易见的,设置笔划使其更明显。
我使用自定义视图在我的应用程序WhiteMarker中创建了条形图,并在Chron中创建了线条。
发布于 2019-04-24 01:21:37
由于接受的aswer具有断开的链接,因此您应该使用:
<com.github.mikephil.charting.charts.CombinedChart
android:id="@+id/chart"/>在您的XML中
下面是一些代码:
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);编辑:原始答案已被修改,以反映我刚刚写的内容。链接已更新,并添加了一些代码。
https://stackoverflow.com/questions/31056095
复制相似问题