目录:
- 1. 概述
- 2. RAND-随机数
- 3. SQRT-非负数算数平方根
- 4. LOG10-以10为底对数
- 5. FLOOR-沿绝对值减小的方向去尾舍入
- 6. LOG-对数
- 7. MAX-最大值
- 8. MIN-最小值
- 9. TRUNC-去掉小数
- 10. FACT-阶乘
- 11. RANDBETWEEN-随机整数
- 12. ABS-绝对值
- 13. LN-自然对数
- 14. SIGN-判断正负
- 15. CEILING-沿绝对值增大方向取整
- 16. ROUND-小数舍入指定位数
- 17. INT-向下取整
- 18. MOD-余数
- 19. PROMOTION-提升比例
- 20. EXP-返回e的n次幂
- 21. ACOS-反余弦
- 22. ASIN-反正弦
- 23. ATAN-反正切
- 24. ATAN2-坐标的反正切值
- 25. COS-余弦值
- 26. DEGREES-弧度转化为度数
- 27. PI-常量PI的倍数
- 28. POWER-乘幂
- 29. RADIANS-角度转化为弧度
- 30. SIN-正弦
- 31. TAN-正切
1. 概述编辑
1.1 版本
FineBI 版本 | JAR 包 | 功能变动 |
---|---|---|
5.1 | - | - |
5.1.7 | 2020-11-05 | 函数释义优化&明确函数参数合法性 |
5.1.11 | 2020-04-01 | 实时数据公式校验加强 |
1.2 使用位置
使用位置 | 使用字段类型 | |
---|---|---|
自助数据集 | 新增列、过滤 | 数值字段(部分函数允许添加一些指定参数数值) |
仪表板 | 添加计算字段 |
2. RAND-随机数编辑
1)概述
语法 | RAND() | 返回均匀分布的随机数。每计算一次工作表,函数都会返回一个新的随机数值。 |
---|
2)注意事项
没有参数
要生成一个位于 a 和 b 之间的随机数,可以使用以下的公式:RAND()*(b-a)+a。
注:实时数据支持一个数值类型参数。
3)示例
公式 | 结果 | 备注 |
---|---|---|
RAND()*60 | 生成一个大于等于0,小于60的随机数 | |
RAND()*19 | 生成一个大于等于0,小于19的随机数 | |
RAND()*50 | 生成一个大于等于0,小于50的随机数 |
3. SQRT-非负数算数平方根编辑
1)概述
语法 | SQRT(number) | 返回一个非负数的算数平方根。可以求算数平方根的任一非负数。 |
---|---|---|
参数 | number | number必须是一个非负数,否则函数返回数值为空值。 |
2)注意事项
支持一个参数,超过则不合法
注:实时数据支持一个数值类型参数。
3)示例
公式 | 结果 | 备注 |
---|---|---|
SQRT(64) | 8 | |
SQRT(-64) | 返回空白 |
4. LOG10-以10为底对数编辑
1)概述
语法 | LOG10(number) | 返回以10为底的对数。 |
---|---|---|
参数 | number | 用于常用对数计算的正实数。 |
2)注意事项
支持一个参数,超过则不合法
注:实时数据支持一个数值类型参数。
3)示例
公式 | 结果 | 备注 |
---|---|---|
LOG10(86) | 1.934498451 | |
LOG10(10) | 1 | |
LOG10(1E5) | 5 |
5. FLOOR-沿绝对值减小的方向去尾舍入编辑
5.1 抽取数据
1)概述
语法 | FLOOR(number) | 将参数number沿绝对值减小的方向去尾舍入。 |
---|---|---|
参数 | number | 待舍入的数值。 |
2)注意事项
支持一个参数,超过则不合法
3)示例
公式 | 结果 | 备注 |
---|---|---|
FLOOR(-2.5) | -2 | |
FLOOR(2.5) | 2 |
5.2 实时数据
1)概述
语法 | FLOOR(number) | 将参数number沿数值减小的方向去尾舍入。 |
---|---|---|
参数 | number | 待舍入的数值。 |
2)注意事项
支持一个参数,超过则不合法
注:实时数据支持一个数值类型参数。
3)示例
公式 | 结果 | 备注 |
---|---|---|
FLOOR(-2.5) | -3 | |
FLOOR(2.5) | 2 |
6. LOG-对数编辑
1)概述
语法 | LOG(number,base) | 按指定的任意底数,返回数值的对数。 |
---|---|---|
参数1 | number | 需要求对数的正实数 |
参数2 | Base | 对数的底数。如果省略底数,默认值为10。 |
2)注意事项
支持使用两个参数,第二个参数可缺省
注:实时数据支持第一个参数为数值类型,第二个可缺省或者同样为数值类型。
3)示例
公式 | 结果 | 备注 |
---|---|---|
LOG(16,2) | 4 | |
LOG(10) | 1 | |
LOG(24,3) | 2.892789261 |
7. MAX-最大值编辑
1)概述
语法 | MAX(number1,number2,...) | 返回参数列表中的最大值 |
---|---|---|
参数1 | number1,number2,... | number1,number2,……到n个需要找出最大值的参数。 |
2)注意事项
支持非零个参数
注:实时数据支持大于 0 个数值类型参数。
3)示例
公式 | 结果 | 备注 |
---|---|---|
MAX(0.1,0,1.2) | 1.2 |
8. MIN-最小值编辑
1)概述
语法 | MIN(number1,number2,...) | 返回参数列表中的最小值 |
---|---|---|
参数1 | number1,number2,... | number1,number2,……到n个需要找出最小值的参数。 |
2)注意事项
支持非零个参数
注:实时数据支持大于 0 个数值类型参数。
3)示例
公式 | 结果 | 备注 |
---|---|---|
MIN(1,2,3,4,5) | 1 |
9. TRUNC-去掉小数编辑
1)概述
语法 | TRUNC(number,num_digits) | 将数字的一定位数截去,返回整数或小数。 |
---|---|---|
参数1 | number | 需要截尾取整的数字。 |
参数2 | num_digits | 用于指定取整精度的数字。 |
2)注意事项
支持两个参数,第二个可缺省
注:实时数据支持第一个参数为数值类型,第二个可缺省或者同样为数值类型。
3)示例
公式 | 结果 | 备注 |
---|---|---|
TRUNC(8.9) | 8 | |
TRUNC(-8.9) | -8 | |
TRUNC(-8.98,1) | -8.9 | |
TRUNC(PI()) | 3 |
10. FACT-阶乘编辑
1)概述
语法 | FACT(number) | 返回数的阶乘,一个数的阶乘等于1*2*3*...*该数 |
---|---|---|
参数 | number | 要计算其阶乘的非负数。如果输入的number不是整数,则截尾取整。 |
2)注意事项
不支持 实时数据 。
支持一个参数,超过则不合法
3)示例
公式 | 结果 | 备注 |
---|---|---|
FACT(1) | 1 | |
FACT(1.9) | FACT(1) 即1 | |
FACT(0) | 1 | |
FACT(5) | 1*2*3*4*5等于120 |
11. RANDBETWEEN-随机整数编辑
1)概述
语法 | RANDBETWEEN(value1,value2) | 返回value1和value2之间的一个随机整数 | |
---|---|---|---|
参数 | value1,value2 | value1,value2任意数值 |
2)注意事项
支持两个参数。
注:实时数据支持两个数值类型的参数。
3)示例
公式 | 结果 | |
---|---|---|
RANDBETWEEN(12.333,13.233) | 13 | |
RANDBETWEEN(11.2,13.3) | 13 |
12. ABS-绝对值编辑
1)概述
语法 | ABS(number) | 返回指定数字的绝对值,恒为非负数 |
---|---|---|
参数 | number | 需要求出绝对值的任意实数 |
2)注意事项
支持一个参数,超过不合法
注:实时数据支持一个数值类型参数。
3)示例
公式 | 结果 | 备注 |
---|---|---|
ABS(-1.5) | 1.5 | |
ABS(0) | 0 | |
ABS(2.5) | 2.5 |
13. LN-自然对数编辑
1)概述
语法 | LN(number) | 返回一个数的自然对数。自然对数以常数项e(2.71828182845904)为底。 |
---|---|---|
参数 | number | 是用于计算其自然对数的正实数。 |
2)注意事项
支持一个参数,超过则不合法
注:实时数据支持一个数值类型参数。
3)示例
公式 | 结果 | 备注 |
---|---|---|
LN(86) | 4.45437 | |
LN(2.7182818) | 1 | |
LN(EXP(3)) | 3 | |
EXP(LN(4)) | 4 |
14. SIGN-判断正负编辑
1)概述
语法 | SIGN(number) | 返回数字的符号。当数字为正数时返回1,为零时返回0,为负数时返回-1 |
---|---|---|
参数 | number | 为任意实数 |
2)注意事项
支持一个参数。
注:实时数据支持一个数值类型参数。
3)示例
公式 | 结果 | 备注 |
---|---|---|
SIGN(10) | 1 | |
SIGN(4-4) | 0 | |
SIGN(-0.00001) | -1 |
15. CEILING-沿绝对值增大方向取整编辑
15.1 抽取数据
1)概述
语法 | CEILING(number) | 将参数number沿绝对值增大的方向,舍入为最接近的整数。 |
---|---|---|
参数 | number | 指待舍入的数值 |
2)注意事项
支持一个参数,超过则不合法
3)示例
公式 | 结果 | 备注 |
---|---|---|
CEILING(-2.5) | -3 | |
CEILING(0.5) | 1 |
15.2 实时数据
1)概述
语法 | CEILING(number) | 将参数number沿数值增大的方向,舍入为最接近的整数。 |
---|---|---|
参数 | number | 指待舍入的数值 |
2)注意事项
支持一个参数,超过则不合法
注:实时数据支持一个数值类型参数。
3)示例
公式 | 结果 | 备注 |
---|---|---|
CEILING(-2.5) | -2 | |
CEILING(0.5) | 1 |
16. ROUND-小数舍入指定位数编辑
1)概述
语法 | ROUND(number,num_digits) | 返回某个数字按指定位数舍入后的数字。 |
---|---|---|
参数1 | number | 需要进行舍入的数字。 |
参数2 | num_digits | 按此位数进行舍入,小于0,则在小数点左侧进行舍入。等于0,则舍入到最接近的整数。大于0,则舍入到指定的小数位。 |
2)注意事项
支持两个参数
注:实时数据支持两个数值类型的参数。
3)示例
公式 | 结果 | 备注 |
---|---|---|
ROUND(2.15,1) | 2.2 | |
ROUND(2.149,1) | 2.1 | |
ROUND(-1.475,2) | -1.48 | |
ROUND(21.5,-1) | 20 |
17. INT-向下取整编辑
17.1 抽取数据
1)概述
语法 | INT(number) | 返回数字向下舍入(数值减小的方向)后最接近的整数值。 |
---|---|---|
参数 | number | 需要下舍入为整数的实数 |
2)注意事项
支持一个参数,超过则不合法
3)示例
公式 | 结果 | 备注 |
---|---|---|
INT(4.8) | 4 | |
INT(-4.8) | -5 | |
INT(4.3) | 4 | |
INT(-4.3+5) | 0 |
17.2 实时数据
1)概述
语法 | INT(number) | 返回数字最接近0的整数。 |
---|---|---|
参数 | number | 需要舍入为整数的实数。 |
2)注意事项
支持一个参数,超过则不合法
注:实时数据支持一个数值类型参数。
3)示例
公式 | 结果 | 备注 |
---|---|---|
INT(4.8) | 4 | |
INT(-4.8) | -4 | |
INT(4.3) | 4 | |
INT(-4.3+5) | 0 |
18. MOD-余数编辑
18.1 抽取数据
1)概述
语法 | MOD(number,divisor) | 返回两数相除的余数。结果的正负号与除数相同。 |
---|---|---|
参数1 | number | 为被除数 |
参数2 | divisor | 为除数。除数为0时,余数无穷大;被除数为0时,余数为0。 |
2)注意事项
支持两个参数
3)示例
公式 | 结果 | 备注 |
---|---|---|
MOD(3,2) | 1 | |
MOD(-3,2) | 1 | |
MOD(3,-2) | -1 | |
MOD(-3,-2) | -1 |
18.2 实时数据
1)概述
语法 | MOD(number,divisor) | 返回两数相除的余数。结果的正负号与被除数相同。 |
---|---|---|
参数1 | number | 为被除数 |
参数2 | divisor | 为除数。除数为0时,余数无穷大;被除数为0时,余数为0。 |
2)注意事项
支持两个数值类型的参数。
3)示例
公式 | 结果 | 备注 |
---|---|---|
MOD(3,2) | 1 | |
MOD(-3,2) | -1 | |
MOD(3,-2) | 1 | |
MOD(-3,-2) | -1 |
19. PROMOTION-提升比例编辑
1)概述
语法 | PROMOTION(value1,value2) | 返回value2在value1上提升的比例 |
---|---|---|
参数 | value1,value2 | value1,value2为实数。(value2-value1)/value1 |
支持两个参数。
注:实时数据支持两个数值类型的参数。
3)示例
公式 | 结果 | 备注 |
---|---|---|
PROMOTION(12,14) | 0.166666666 | 即提升了16.6666666% |
PROMOTION(-12,14) | 2.166666666 | 即提升了216.6666666% |
20. EXP-返回e的n次幂编辑
1)概述
语法 | EXP(number) | 返回e的n次幂。常数e为自然对数的底数,等于2.171828182845904。 |
---|---|---|
参数 | number | 为任意实数,作为常数e的指数。 |
2)注意事项
支持一个参数,超过则不合法。
- 如果要返回其他常数作为底数的幂,可以使用指数运算符(^)。例如在4^2中,4是底数,而2是指数。EXP函数与LN函数互为反函数。
3)示例
公式 | 结果 | 备注 |
---|---|---|
EXP(0) | 1 | |
EXP(3) | 20.08553692 | |
EXP(LN(2)) | 2 |
21. ACOS-反余弦编辑
1)概述
语法 | ACOS(number) | 返回指定数值的反余弦值。反余弦值为一个角度,返回角度以弧度形式表示。 |
---|---|---|
参数 | number | 需要返回角度的余弦值。 |
2)注意事项
支持一个参数,超过则不合法
函数的参数必须在-1和1之间,包括-1和1。返回的角度值在0和Pi之间。如果要把返回的角度用度数来表示,用180/PI()乘返回值即可。
注:实时数据支持一个数值类型参数。
3)示例
公式 | 结果 | 备注 |
---|---|---|
ACOS(1) | 0(弧度) | |
ACOS(0.5) | 1.047197551(Pi/3弧度) | |
ACOS(0.5)*180/PI() | 60(度) |
22. ASIN-反正弦编辑
1)概述
语法 | ASIN(number) | 返回指定数值的反正弦值。反正弦值为一个角度,返回角度以弧度形式表示。 |
---|---|---|
参数 | number | 需要返回角度的正弦值。 |
2)注意事项
支持一个参数,超过则不合法
指定数值必须在-1到1之间(含1与-1)。返回角度在-pi/2到pi/2之间(含-pi/2与pi/2)。用角度形式返回数值时,返回数值乘以180/PI()
注:实时数据支持一个数值类型参数。
3)示例
公式 | 结果 | 备注 |
---|---|---|
ASIN(0.5) | 0.523598776(pi/6弧度) | |
ASIN(1) | 1.570796327(pi/2弧度) | |
ASIN(0.5)*180/PI() | 30(度) |
23. ATAN-反正切编辑
1)概述
语法 | ATAN(number) | 计算指定数值的反正切值。指定数值是返回角度的正切值,返回角度以弧度形式表示。 |
---|---|---|
参数 | number | 返回角度的正切。 |
2)注意事项
支持一个参数,超过则不合法
返回角度在-pi/2到pi/2之间。无法返回角度-pi/2或pi/2。用角度形式返回数值时,返回数值乘以180/PI()。
注:实时数据支持一个数值类型参数。
3)示例
公式 | 结果 | 备注 |
---|---|---|
ATAN(-1) | -0.785398163(-pi/4弧度) | |
ATAN(0) | 0(弧度) | |
ATAN(2)*180/PI() | 63.43494882(度) |
24. ATAN2-坐标的反正切值编辑
1)概述
语法 | ATAN2(x_num,y_num) | 返回x、y坐标的反正切值。返回角度为x轴与过(x_num,y_num)与坐标原点(0,0)的一条直线形成的角度。 |
---|---|---|
参数1 | x_num | 指定点的x坐标 |
参数2 | y_num | 指定点的y坐标 |
2)注意事项
支持两个参数
- 正值表示从x轴开始以逆时针方式所得的角度;负值表示从x轴开始以顺时针方式所得的角度。 ATAN2(a,b)=ATAN(b/a),a为0时除外。 当x_num与y_num都为0时,ATAN2返回错误信息*DIV/0!。 用角度制显示返回数值时,把返回数值乘以180/PI()。 返回值以弧度表示(返回值大于-pi且小于等于pi)。
3)示例
公式 | 结果 | 备注 |
---|---|---|
ATAN2(-2,2) | 2.356194490192345 | 弧度制的3*pi/4 |
ATAN2(2,2) | 0.785398163 | 弧度制的pi/4 |
ATAN2(-2,2)*180/PI() | 135 | 角度制 |
25. COS-余弦值编辑
1)概述
语法 | COS(number) | 返回一个角度的余弦值。 |
---|---|---|
参数 | number | 以弧度表示的需要求余弦值的角度。 |
2)注意事项
支持一个参数,超过则不合法。
- 要把一个角度转换成弧度值,将角度乘于PI()/180。 COS(n*2*PI()+number)=COS(number)(其中n为整数,number从-pi到pi)。
3)示例
公式 | 结果 | 备注 |
---|---|---|
COS(0.5) | 0.877582562 | |
COS(30*PI()/180) | 0.866025404 |
26. DEGREES-弧度转化为度数编辑
1)概述
语法 | DEGREES(angle) | 将弧度转化为度。 |
---|---|---|
参数 | Angle | 待转换的弧度角。 |
2)注意事项
支持一个参数,超过则不合法。
注:实时数据支持一个数值类型参数。
3)示例
公式 | 结果 | 备注 |
---|---|---|
DEGREES(PI()/2) | 90 | |
DEGREES(3.1415926) | 179.9999969 |
27. PI-常量PI的倍数编辑
1)概述
语法 | PI(number) | 一个数学常量 |
---|---|---|
参数 | number | number为空时,函数返回数值3.14;当参数不为空时,number表示PI的整数倍数。 |
2)注意事项
支持一个缺省参数
注:实时数据支持使用一个数值类型参数,可缺省。
3)示例
公式 | 结果 | 备注 |
---|---|---|
SIN(PI()/2) | 1 | 计算圆的面积的公式:S=PI()*(r^2),其中S为圆的面积,R为圆的半径。 |
PI(3) | 9.42 |
28. POWER-乘幂编辑
1)概述
语法 | POWER(number,power) | 返回指定数字的乘幂 |
---|---|---|
参数1 | number | 底数,可以为任意实数 |
参数2 | power | 指数。参数number按照该指数次幂乘方。 |
2)注意事项
支持两个参数。
可以使用符号“^”代替POWER,如: POWER(5,2)等于5^2。
注:实时数据支持两个数值类型的参数。
3)示例
公式 | 结果 | 备注 |
---|---|---|
POWER(6,2) | 36 | 6^2=6*6 |
POWER(14,5) | 537824 | 14^5=14*14*14*14*14 |
POWER(4,2/3) | 2.519842100 | 3√(4^2)即3√16 |
POWER(3,-2.3) | 0.079913677 | 3√(1/9) |
29. RADIANS-角度转化为弧度编辑
1)概述
语法 | RADIANS(angle) | 将角度转换成弧度 |
---|---|---|
参数 | Angle | 需要转换为弧度的角度。 |
2)注意事项
支持一个参数。
注:实时数据支持一个数值类型参数。
3)示例
公式 | 结果 | 备注 |
---|---|---|
RADIANS(90) | 1.570796327 | Pi/2弧度 |
30. SIN-正弦编辑
1)概述
语法 | SIN(number) | 计算给定角度的正弦值 |
---|---|---|
参数 | Number | 待求正弦值的以弧度表示的角度 |
2)注意事项
支持设置一个参数。
- 如果参数的单位是度,将其乘以PI()/180即可转换成弧度。
3)示例
公式 | 结果 | 备注 |
---|---|---|
SIN(10) | -0.544021111 | |
SIN(45*PI()/180) | 0.707106781 |
31. TAN-正切编辑
1)概述
语法 | TAN(number) | 返回指定角度的正切值 |
---|---|---|
参数 | Number | 待求正切值的角度,以弧度表示。如果参数是以度为单位的,乘以Pi()/180后转换为弧度。 |
2)注意事项
支持一个参数
注:实时数据支持一个数值类型参数。
3)示例
公式 | 结果 | 备注 |
---|---|---|
TAN(0.8) | 1.029638557 | |
TAN(45*Pi()/180) | 1 |