我是MPAndroidchart的新手,这里的水平条形图存在一些问题
1. 如何将x轴标签对齐到左对齐
2. 如何将条形图的值与条形左侧的负数对齐
3. 如何解决在x y轴的轴线越多时避免x-y轴相交的间隙
4. 如何在缩放时固定条重叠在轴线上方
这是我的代码
HorizontalBarChart mStatGraph = (HorizontalBarChart) findViewById(R.id.reportlist_stat_graph);
mStatGraph.setDrawBarShadow(false);
mStatGraph.setDrawValueAboveBar(true);
mStatGraph.getDescription().setEnabled(false);
mStatGraph.setMaxVisibleValueCount(20);
mStatGraph.setPinchZoom(false);
mStatGraph.setDrawGridBackground(true);
mStatGraph.setGridBackgroundColor(Color.WHITE);
mStatGraph.setExtraBottomOffset(20);
mStatGraph.setViewPortOffsets(5, 0, 5, 20);
XAxis xl = mStatGraph.getXAxis();
xl.setPosition(XAxis.XAxisPosition.BOTTOM);
xl.setTypeface(mTfLight);
xl.setTextSize(13f);
xl.setTextColor(Color.parseColor("#2C3846"));
xl.setAxisLineColor(Color.BLACK);
xl.setAxisLineWidth(2f);
xl.setDrawAxisLine(true);
xl.setDrawGridLines(false);
xl.setDrawLabels(true);
xl.setGranularity(1f);
xl.setAxisMinimum(0f);
xl.setYOffset(2f);
xl.setXOffset(10f);
xl.setSpaceMin(2f);
int lineChartXOffset = getResources().getInteger(R.integer.report_bar_chart_xoffset);
xl.setXOffset(lineChartXOffset);
mStatGraph.getRendererXAxis().getPaintAxisLabels().setTextAlign(Paint.Align.LEFT);
YAxis yl = mStatGraph.getAxisLeft();
yl.setDrawAxisLine(false);
yl.setAxisLineWidth(0f);
yl.setAxisLineWidth(Color.TRANSPARENT);
yl.setDrawLabels(false);
yl.setGridColor(Color.GRAY);
yl.setDrawGridLines(true);
yl.setAxisMinimum(-0.005f);
yl.setSpaceBottom(5f);
yl.setSpaceTop(5f);
yl.setEnabled(true);
YAxis yr = mStatGraph.getAxisRight();
yr.setTypeface(mTfLight);
yr.setTextSize(12f);
yr.setDrawGridLines(false);
yr.setDrawLabels(true);
yr.setGridColor(Color.GRAY);
yr.setAxisMinimum(-0.005f);
yr.setXOffset(15f);
yr.setYOffset(-3f);
yr.setDrawAxisLine(true);
yr.setAxisLineColor(Color.BLACK);
yr.setAxisLineWidth(2f);
yr.setSpaceBottom(5f);
yr.setSpaceTop(5f);
yr.setEnabled(true);
yr.setValueFormatter(barGraphValueFormatter);
mStatGraph.getLegend().setEnabled(false);
setData();
mStatGraph.setFitBars(true);
mStatGraph.invalidate();
请帮助我解决这些问题。 预先感谢
答案 0 :(得分:0)
第一个问题的答案
$(document).ready(function() {
var minYear = new Date().getFullYear() - 5;
let y = 0;
for (i = 0; i <= 10; i++)
y = minYear + 1;
$("#myselectYear").append(new Option(y, y));
}
});