Я использую MPChart для рисования линейного графика.Проблема с Android MPChart с печатью оси X и Y
Ниже приведен код, который я использовал для рисования диаграммы. График отлично работает. Единственная проблема, которая у меня возникает, - мне нужно, чтобы ось x и y напечатала (i.e) L-форму слева и внизу графика. Я хочу, чтобы значения X (которые были переданы в LineData) напечатаны в нижней части графика (по оси x), и я хочу установить минимальное и максимальное значение для оси y, и график должен быть скорректирован на основе этого минимума и максимальное значение.
Если я разорву 1-й части и передаю правду/удалю часть 1-й линии. Граф становится неверным. Кто-то, пожалуйста, помогите мне.
Благодаря
heartXVals является ArrayList, содержащих даты соответствующих значений частоты сердечных сокращений в данном heartYVals Входа.
heartDataSet = LineDataSet(heartYVals,"")
heartDataSet!!.setLineWidth(1.75f)
heartDataSet!!.setCircleSize(3f);
heartDataSet!!.setColor(Color.WHITE);
heartDataSet!!.setCircleColor(Color.WHITE);
heartDataSet!!.setHighLightColor(Color.WHITE);
heartDataSet!!.setDrawValues(false);
val dataSets:ArrayList<LineDataSet> = ArrayList();
dataSets.add(heartDataSet!!);
val data:LineData = LineData(heartXVals,dataSets)
val lineChart:LineChart = view.findViewById(R.id.heartChart) as LineChart
lineChart.setDescription("")
lineChart.setNoDataTextDescription("You need to provide data for the chart.")
lineChart.setDrawGridBackground(false)
lineChart.setTouchEnabled(false)
lineChart.setDragEnabled(false)
lineChart.setScaleEnabled(true)
// if disabled, scaling can be done on x- and y-axis separately
lineChart.setPinchZoom(false)
//lineChart.setBackgroundColor(color)
// set custom chart offsets (automatic offset calculation is hereby disabled)
lineChart.setViewPortOffsets(10f, 0f, 10f, 0f)
// add data
lineChart.setData(data)
// get the legend (only possible after setting data)
val l = lineChart.getLegend()
l.setEnabled(false)
lineChart.getAxisLeft().setEnabled(false) -- Line 2
/* val leftAxis:YAxis = lineChart.getAxisLeft(); ---Line 1
leftAxis.removeAllLimitLines()
leftAxis.setAxisMaxValue(220f);
leftAxis.setAxisMinValue(40f);
leftAxis.setStartAtZero(false);
leftAxis.enableGridDashedLine(0f, 0f, 0f);*/
lineChart.getAxisRight().setEnabled(false)
lineChart.getXAxis().setEnabled(false)
//lineChart.getY.setEnabled(true)
// animate calls invalidate()...
lineChart.animateX(2500)
lineChart.invalidate()