zoukankan      html  css  js  c++  java
  • 灵活使用XMultipleSeriesRenderer设置自定义的轴标签

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

     

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

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

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

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

    具体代码如下面所示:

    // 设置系列 renderer

        public XYMultipleSeriesRenderer getRenderer() {

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

            XYMultipleSeriesRenderer renderer = 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轴坐标上的数字标签被我们替换为一系列云南省地名.



  • 相关阅读:
    mybaits错误解决:There is no getter for property named 'id' in class 'java.lang.String'(转)
    Tomcat配置虚拟路径
    FireFox背景亮度修改
    简单的百度贴吧爬虫实现(urllib)
    python知识总结
    QT-- MainWindow外的cpp文件调用ui
    数据结构--栈的实现
    数据结构-- 队列的实现
    经典排序算法---归并排序
    经典排序算法---希尔排序
  • 原文地址:https://www.cnblogs.com/encounter/p/2188497.html
Copyright © 2011-2022 走看看