我正在使用Graph View library在Android中绘制图表。我想绘制听力图。任何人都知道如何使Y轴向下生长,并在图表上方设置水平标题?
答案 0 :(得分:0)
第一部分相对简单;首先,通过模拟现有库逻辑创建自己的Y标签集,但以相反的顺序将值存储到您自己的String数组中。然后简单地将所有Y值乘以-1,使它们为负值,并将graphview设置为使用自己的标签来掩盖它们的消极性,例如。
Double yMin = Math.floor(...);
Double yMax = Math.ceil(...);
int yLabelsCnt = 1 + (int)(Math.ceil(yMaxValue) - yMin.intValue());
int yLabelInterval = (int)(Math.ceil((double)yLabelsCnt / MAX_Y_LABELS));
yLabelsCnt = (yLabelInterval > 1)
? (int)Math.ceil(yLabelsCnt / yLabelInterval)
: yLabelsCnt;
// Y labels
String[] yArray = new String[ yLabelsCnt ];
int j=yLabelsCnt-1;
for(int i = yMin.intValue(); i < (yMin.intValue() + (yLabelInterval * yLabelsCnt)); i+=yLabelInterval){
yArray[j--]=i.toString();
}
....
// invert the Y values
for (DataObjects myObject : myDataObjects) {
lineGraphSeries.appendData( new DataPoint(myObject.getValueX(), (myObject.getValueY() * -1.0 )),
true,
MAX_DATA_POINTS);
}
....
staticLabelsFormatter.setVerticalLabels(yArray);
graphView.getGridLabelRenderer().setLabelFormatter(staticLabelsFormatter);