首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Graph View创建比例颠倒的图形

使用Graph View创建比例颠倒的图形
EN

Stack Overflow用户
提问于 2015-02-27 11:49:07
回答 1查看 553关注 0票数 0

我正在使用Graph View library在Android中绘制图形。我想画一张听力图。有谁知道如何使Y轴向下增长,并将水平标题设置在图形上方?

EN

回答 1

Stack Overflow用户

发布于 2015-03-02 21:28:17

第一部分相对简单;首先通过模拟现有的库逻辑创建您自己的Y标签集,但是将值以相反的顺序存储到您自己的字符串数组中。然后简单地将所有的Y值乘以-1,使它们为负,并设置图形视图以使用您自己的标签来掩盖它们的负性,例如。

代码语言:javascript
复制
    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);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28757201

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档