Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.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
Javafx 2 设置Y轴上的十进制数_Javafx 2 - Fatal编程技术网

Javafx 2 设置Y轴上的十进制数

Javafx 2 设置Y轴上的十进制数,javafx-2,Javafx 2,我有一个5位小数的数据系列,比如058861;现在我使用XYChart作为折线图进行绘制,但我只看到绘制的3个数字,即0、58或.584 我也尝试过改变字体大小 yAxis.setTickLabelFont(Font.Font(“Arial”,5)) 没有结果,我总是画出3个数字 下面是两张显示这种行为的图片 如何在Y轴上设置更多的小数点 更改字体大小没有帮助。您必须使用该函数更改记号标签格式设置器。那么y轴打印的数字有什么问题?你可以认为0.58等于0.58000等等。这些只是主要的刻度,而

我有一个5位小数的数据系列,比如058861;现在我使用XYChart作为折线图进行绘制,但我只看到绘制的3个数字,即0、58或.584

我也尝试过改变字体大小
yAxis.setTickLabelFont(Font.Font(“Arial”,5))

没有结果,我总是画出3个数字

下面是两张显示这种行为的图片

如何在Y轴上设置更多的小数点


更改字体大小没有帮助。您必须使用该函数更改记号标签格式设置器。

那么y轴打印的数字有什么问题?你可以认为0.58等于0.58000等等。这些只是主要的刻度,而不是数据系列中的点(数字)。如果希望看到更多的刻度,从而获得更精确的测量值,请更改tickUnit参数:

NumberAxis(double lowerBound, double upperBound, double tickUnit)
但这一次,如果您的数据范围(
upperBound
-
lowerBound
)根据
tickUnit
很大,则图形的形状和形式将降级。要解决此问题,请使用
lowerBound
upperBound
值仅显示数据序列的一部分,就像它们已被缩放一样。
要更改记号标签的字体和大小,请尝试:

yAxis.setTickLabelFont(Font.font("Arial", FontWeight.MEDIUM, 18));

我在Oracle FX示例中读过关于setTickLabelFormatter的内容,但这种方法似乎只在添加前缀和后缀时有用,如Oracle文档yAxis.setTickLabelFormatter(新的NumberAxis.DefaultFormatter(yAxis,“$”,null))中所述;NumberAxis.DefaultFormatter类向指定轴的刻度标签添加前缀和后缀。在示例5-2中,格式化程序为纵轴的每个刻度标签定义一个美元符号($)前缀。后缀参数的null值表示未添加后缀。我不需要添加任何内容,只需在我的数据系列中添加4或5个小数即可解决问题:解决方案是yAxis.setTickLabelFormatter(新NumberAxis.DefaultFormatter(yAxis){@Override public String to String(Number object){返回String.format(“%6.4f”,object);});您好,乌鲁克谢谢您的回复:我的问题是十进制数字显示。我的系列数据有4或5个小数点,我只得到3个小数点,即我的系列=058431我得到显示。584这不是网格记号外观的问题,因为我只是将网格设置为double max=max+(max*0.001);双最小值=最小值-(最小值*0.001);最终数字xis xAxis=新数字xis(开始-1,结束+1,10);最终数值轴yAxis=新数值轴(最小值、最大值、最大值/500);您在哪里显示数据系列?它们在您在问题中发布的屏幕截图上不可见。另外,您的问题是
如何在Y轴上设置更多的十进制数?
,据我所知,这是关于网格刻度的。用两张图片更新了我的问题:第一张图片显示的数据与我在mySQL中的数据一样,有4个十进制数。第二个显示了它是如何绘制的(图左部分的Y比例);即使网格设置为0.0001 final NumberAxis yAxis=新NumberAxis(最小值,最大值,0.0001),我也总是有3个小数;PS实际打印显示关闭列值