Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/319.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 对数轴?_Java_Android_Androidplot - Fatal编程技术网

Java 对数轴?

Java 对数轴?,java,android,androidplot,Java,Android,Androidplot,我目前正在使用AndroidPlot显示动态XY图。通常显示此数据的Python脚本还包括使用Matplotlib以对数比例绘制数据的功能。是否有可能使用AndroidPlot获得对数Y轴,或者甚至任何类型的Y轴,其刻度线的间距不相等 谢谢你的帮助 使用Androidplot绝对可以做到这一点,但这并不像设置配置参数那么简单 最简单的方法可能是扩展XYSeries的实现,并调整getY(int)方法以返回日志值而不是原始值。例如,仅在y轴上实施log10: class LogXYSeries e

我目前正在使用AndroidPlot显示动态XY图。通常显示此数据的Python脚本还包括使用Matplotlib以对数比例绘制数据的功能。是否有可能使用AndroidPlot获得对数Y轴,或者甚至任何类型的Y轴,其刻度线的间距不相等


谢谢你的帮助

使用Androidplot绝对可以做到这一点,但这并不像设置配置参数那么简单

最简单的方法可能是扩展XYSeries的实现,并调整
getY(int)
方法以返回日志值而不是原始值。例如,仅在y轴上实施log10:

class LogXYSeries extends SimpleXYSeries {

        public LogXYSeries(String title) {
            super(title);
        }

        @Override
        public Number getY(int index) {
            final Number rawY = super.getY(index);
            if(rawY != null) {
                Math.log10(rawY.doubleValue());
            }
            return null;
        }
}
就刻度而言,您可以将这些刻度配置为以固定值增量显示,或以可见值范围的均匀细分显示(默认值为适合系列数据中的最小值/最大值,但如果愿意,您可以手动设置)。我可以想象,用对数标尺进行细分就是你想要的


如果我误解了你想要实现的目标,你只想将对数刻度应用到刻度标签上,你也可以这样做。域和范围标签文档中有一个用于XYPLOT的标签。

我的目标是将对数刻度应用于刻度。我可能弄错了,但是设置自定义格式化程序是否只会更改记号标签的外观,而不会更改其实际值?无论如何,这真的很有帮助!谢谢,没错。它们在标记方面仍然是准确的,但绘制的数据看起来会有所不同,因为不会应用对数缩放。LogXYSeries方法可能是您所追求的,但我想我应该提到如何将标签打印为日志值以防万一。