灵活使用XMultipleSeriesRenderer设置自定义的轴标签

分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

               

 

ACE绘制的图形,坐标轴上的刻度值,要么显示为数字,要么显示为时间:

 

那么能不能在坐标轴上显示自己的内容,比如文字呢?

这需要使用 XYMultipleSeriesRendereraddTextLabel(int,String)方法。

该方法接收一个int参数,用于指定要显示文字的X轴坐标,比如在X轴坐标1的位置显示“昆明”,则addTextLabel(1,”昆明”);

当然,原来tick数字1仍然会显示,这样数字“1” 和文字标签“昆明”会重叠再一起,因此,我们还需要用 setXLabels(0) 把数字标签屏蔽掉。

具体代码如下面所示:

// 设置系列renderer

    publicXYMultipleSeriesRenderer getRenderer() {

    // 构造一个多系列render(多个renderer的集合)

        XYMultipleSeriesRendererrenderer = new XYMultipleSeriesRenderer();

        renderer.setAxisTitleTextSize(16); // 坐标轴标题字体大小:16

       renderer.setChartTitleTextSize(20); // 图表标题字体大小:20

       renderer.setLabelsTextSize(15); // 轴标签字体大小:15

       renderer.setLegendTextSize(15); // 图例字体大小:15

        renderer.setShowGrid(false); // 设置网格显示

        renderer.setXAxisMin(xMin); // 设置X轴起点

       renderer.setAxesColor(Color.WHITE); // 设置XY轴颜色

       renderer.setLabelsColor(Color.GRAY);// 设置轴标签颜色

        renderer.setXAxisMax(xMax); // 设置X轴最大点

        renderer.setYAxisMin(yMin); // 设置Y轴起点

//       renderer.setYAxisMax(yMax);

        renderer.setMargins(new int[] {20, 30, 15,0}); // 图形4边距

       renderer.setDisplayChartValues(true); // 在柱子顶端显示数值

       renderer.setXLabelsAngle(-25); // 设置X轴标签倾斜角度(clockwise degree)

        renderer.setXLabels(0); // 设置X轴不显示数字(改用我们手动添加的文字标签)

        int i=0;

        for(Map<String,Object>map:maps){

        i++;

        String name=map.get("rowname").toString();

        renderer.addTextLabel(i, name);

        }

        // 构造其中一个系列的render

        SimpleSeriesRenderer r= new SimpleSeriesRenderer();

        r.setColor(Color.YELLOW);

       renderer.addSeriesRenderer(r);

        return renderer;

      }

运行效果如下:

 现在x轴坐标上的数字标签被我们替换为一系列云南省地名.



 

 

           

分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值