Articles of mpandroidchart

java.lang.RuntimeException:Parcelable遇到IOException,在Android中传递ArrayList对象编写可序列化对象

我想使用实现Serializable的DataWrapper将我的ArrayList对象传递给另一个活动。 我按照这里提供的答案: 将用户定义对象的arraylist传递给Intent android 。 我从MPAndroidChart库OnChartGestureListener()开始另一个Activity。 这是我传递我的ArrayList对象threadList : mChart.setOnChartGestureListener(new OnChartGestureListener() { @Override public void onChartSingleTapped(MotionEvent me) { Intent intent = new Intent(MainActivity.this, TextersSmsActivity.class); intent.putExtra(“threadList”, new DataWrapper(threadList)); MainActivity.this.startActivity(intent); } //….. } 我像这样实现了DataWrapper类: public class DataWrapper implements Serializable { private static final long serialVersionUID = 100L; private ArrayList threadList; public DataWrapper(ArrayList threadList) { this.threadList = threadList; } […]

MPAndroidChart BarChart禁用右图例

我需要从BarChart删除正确的传说。 这是我的代码。 mChart = (BarChart) rootView.findViewById(R.id.chart1); mChart.setOnChartValueSelectedListener(this); mChart.setDrawBarShadow(false); mChart.setDrawValueAboveBar(true); mChart.setDescription(“”); mChart.setMaxVisibleValueCount(60); mChart.setPinchZoom(false); mChart.setDrawGridBackground(false); mTf = Typeface.createFromAsset(getActivity().getAssets(), “OpenSans-Regular.ttf”); XAxis xAxis = mChart.getXAxis(); xAxis.setPosition(XAxisPosition.BOTTOM); xAxis.setTypeface(mTf); xAxis.setDrawGridLines(false); xAxis.setSpaceBetweenLabels(2); ValueFormatter custom = new MyValueFormatter(); YAxis leftAxis = mChart.getAxisLeft(); leftAxis.setTypeface(mTf); leftAxis.setLabelCount(8); leftAxis.setValueFormatter(custom); leftAxis.setPosition(YAxisLabelPosition.OUTSIDE_CHART); leftAxis.setSpaceTop(15f); Legend l = mChart.getLegend(); l.setPosition(LegendPosition.BELOW_CHART_LEFT); l.setForm(LegendForm.SQUARE); l.setFormSize(9f); l.setTextSize(11f); l.setXEntrySpace(4f); mChart.animateXY(3000, 3000); 谢谢!

在MPAndroidChart库中,如何在很长时间内将X轴标签包装成两行?

我试图显示X轴标签,当它们很长时,它会转到2行。 如何在LineChart中实现这一目标? 见下面的截图。 我想要时间去第二行,而不是留在日期旁边

在mpandroidchart的x轴上实现连续的日期时间标签

我们在一年中的不同日期收集数据点,并希望在图表中显示它们 – 显示日期的x轴。 现在我们创建一个长度为364的数组,每个数组包含相应日期的值。 但是,我们希望x轴不显示一年中的某一天,而是显示年,月或日,具体取决于使用随缩放手势变化的比例。 当查看整年的数据时,轴应该显示jan – feb … – nov – dec但是当插入(从而导致轴重新缩放)时仅显示feb .. mar和月份的个别日期。 这可能吗? 为了改善这个问题 – 一些图片:假设我们从显示年份的图表开始: 现在我们放大x轴来改变比例 – x轴标记应该再次改变并描绘几个月的几天,最终描绘所有日子:

MPAndroidChart如何显示所有xaxis值

我正在使用MPAndroidChart库开发一些图表function。 有没有办法显示我添加的所有xaxis值? 似乎库将在xaxis上自动计算,一些值将被隐藏。 恩。 显示日期:05-17 05-17 05-15 ….同一天05-17将不会显示。 谢谢!

使用MPAndroidChart库从折线图中删除点标签

我正在使用MPAndroidChart库设计折线图。 在该图表中,应删除或抑制“点标签”,一旦我们点击该点圈,就应显示标记。 但是,现在它在每个点圆上显示点标签,所以我需要的是仅在点击标记时显示标记中的点。 此外,虽然我试图自定义图表,但Y轴点显示为float ; 我试图将它们显示为int但这不起作用。 我怎样才能解决这个问题?

MPAndroidChart – 传奇标签正在被切断

我正在使用MPAndroidChart库 。 有人有这个问题吗? 当我将标签置于BOTTOM位置时,这些都被切断了。 谢谢

MPAndroidChart设置图表填充/偏移

我正在使用MPAndroidChart作为我的条形图,我正在努力去除图形的填充(见下图) 我对这个问题的处理方法是: chart.setDrawLegend(false); chart.setDrawMarkerViews(false); chart.setDrawUnitsInChart(false); chart.setDrawValueAboveBar(false); chart.setDrawXLabels(false); chart.setDrawYLabels(false); chart.setDescription(“”); chart.setOffsets(0, 0, 0, 0); chart.getTransformer().prepareMatrixValuePx(chart); chart.getTransformer().prepareMatrixOffset(chart); chart.getContentRect().set(0, 0, chart.getWidth(),chart.getHeight()); 到目前为止还没有任何工作。 你知道另一种解决这个问题的方法吗?

如何使用MPAndroidChart创建带有分组条形的BarChart?

如何使用MPAndroidChart的 BarChart比较两组数据。 它应该如下图所示: 我编辑了一个代码,我从github的示例项目中获取。 如何将100f and 110f值放在一个Xaxis标签中 Score score1 = new Score(100f, 0, “Whole Number”); mRealm.copyToRealm(score1); Score score2 = new Score(110f, 0, “Whole Number”); mRealm.copyToRealm(score2);

强制BarChart Y轴标签是整数?

我使用MPAndroidChart创建了一个BarChart,我正在动态输入数据。 这意味着我还需要动态确定Y轴。 我的所有数据都表示为整数,但Y轴有时会将图例显示为带小数点后1位的十进制值。 我试图使用ValueFormatter来舍入值,但问题是有时Y值不在整数值位置(例如0.8,1.6,2.4等)。 因此,如果我只是将它们编辑为整数,则它们将不在正确的位置。 无论如何我可以强制BarChart只在Integer位置显示值吗? 它可以跳过一些,实际上我希望它在值变大时。 编辑:当我说整数不在正确的位置时,我的意思是,一旦我修改了每个标签显示的内容,它们就不是“正确的”。 在我的例子中,我有5个条显示值3,4,2,3,2。 第一个图像是’默认’,第二个是我使用以下编辑值格式化程序后的图像: myBarChart.getYLabels().setFormatter(new ValueFormatter() { @Override public String getFormattedValue(float v) { return ((int) v)+””; } }); 正如我们从这些图像中看到的,我的整数值不是它们应该的位置(并且有两个’2’)。 在这个例子中我除了显示值0,1,2,3,4。 如果我有更多的数据,我希望它足够聪明,只显示我有空间的值,所以例如,如果数据包含0-50的值,它将显示类似0,10,20,30 ,40,50或可能0,15,30,45等