用jfreechart画折线图,但因为值都太小,如 3.1e-12,这样所有的点都基本上在一条直线上了。
这个问题怎么解决?
谢谢!

解决方案 »

  1.   

        第二个方法我也考虑过,这个是肯定可以用的。不过应该是实在没有其他更优雅的解决方法的时候再用。
        jfreechart的axis range一般是自动计算的,我现在的问题应该跟最大值和最小值关系不大。我想应该
    可以设置range axis来解决这个问题。目前正在看关于axis文档,希望能找到好的解决办法。
      

  2.   

    问题解决了,就用大牛java2000_net的第一种方法。
    刚开始对坐标的最大值和最小值理解有问题,看了半天的开发文档才找到办法:设置坐标轴的最小值就可以了。可以用在org.jfree.chart.axis.ValueAxis中的这个方法:setAutoRangeMinimumSize(double size)设置坐标轴的最小值,默认的是0.00000001。下面是部分源代码:
        /** The default minimum auto range. */
        public static final double DEFAULT_AUTO_RANGE_MINIMUM_SIZE = 0.00000001;    
        /**
         * Sets the auto range minimum size and sends an {@link AxisChangeEvent} 
         * to all registered listeners.
         *
         * @param size  the size.
         * 
         * @see #getAutoRangeMinimumSize()
         */
        public void setAutoRangeMinimumSize(double size) {
            setAutoRangeMinimumSize(size, true);
        }