可视化、字段和命名的指导原则

以下是在使用 Qlik Sense 时需要知道的某些约定和限制。例如:在名称、说明和表达式中使用的最多字符数,以及保留仅供 Qlik Sense 使用的字符。

可视化的最大数量

表格上可以包含的可视化的最大数量受表格单元格数量(即 288 (24x12))的限制。实际最大数量低于此数量,因为限制使用仅由 1 个单元格组成的可视化。

名称长度的上限

以下限制适用于 Qlik Sense 中不同位置所使用的字符数量:

名称长度的上限
情况 上限 >=
名称(标题、维度、脚注...) 最多 255 个字符。
说明 最多 512 个字符。
表达式 最多 64,000 个字符
标签 每个标签最多 31 个字符和每个主条目最多 30 个标签。

文本和图片图表:

最多 12,000 个字符

命名维度和度量

如果为维度和度量使用长名称,则会将名称截断,并且将会显示 “...”,指示名称有一部分被隐藏。另外建议避免使用为系统用途保留的字符,因为可能会发生不可预知的后果和错误。

避免在维度和度量名称中使用以下字符:

  • :
  • =
  • [
  • ]
  • {
  • }
  • $

表达式中的最大字符数

可在可视化表达式中写入的最大字符数为 64,000。如果您尝试构建字符数超出该限制的表达式,表达式将会被截断。

数字格式和时间格式的约定

在许多解释和格式化函数中,可以通过使用格式代码设置数字和日期的格式。本主题介绍对数字、日期、时间或时间戳设置格式所使用的惯例。这些惯例同时适用于脚本和图表函数。

数字格式

要表示一个具体数位的数字,可以使用符号 "0" 代表每一个数位。

要在小数点左边表示可能的数字,可使用符号 "#"

要标记千位分隔符的位置或小数位分隔符的位置,可以使用适用的千位分隔符和小数位分隔符。

格式代码用于定义分隔符的位置。无法在格式代码中设置分隔符。在脚本中,对于这种情况可以使用 DecimalSepThousandSep 变量。

可以对任何位置的数字使用千位分隔符分组数位。例如,一个格式字符串 "0000-0000-0000"(千位分隔符=“-”)可以用于显示一个十二位部件编号 "0012-4567-8912"

有关更多信息,请参阅DecimalSep ThousandSep

Examples:  

数字格式的示例
数字格式 说明
# ##0

描述带千位分隔符的整数数字。在该示例中,将 " " 用作小数位分隔符。

###0

描述不带千位分隔符的整数数字。

0000 描述至少四位数的整数数字。如数字 123 将显示为 0123。
0.000

描述带三个小数位的数字。在该示例中,将 "." 用作小数位分隔符。

特殊数字格式

Qlik Sense 可以解释及格式化任何基数在 2 和 36 之间的数字,包括二进制、八进制及十六进制。它也可处理罗马格式。

特殊数字格式
格式 说明
二进制格式

要表示二进制格式,格式代码前面应带 (bin)(BIN)

八进制格式

要表示八进制格式,格式代码前面应带 (oct)(OCT)

十六进制格式

要表示十六进制格式,格式代码前面应带 (hex)(HEX)。如果使用大写版本,格式化将使用 A-F(如 14FA)。非大写版本将导致格式化使用 a-f(如 14fa)。解释对两种变量都可用,忽略代码的大小写。

十进制格式

允许使用 (dec)(DEC) 表示小数格式,但是没有必要。

自定义基数格式

要使用介于 2 和 36 之间的任何基数表示一个格式,格式代码前面应以 (rxx) (Rxx) 为开头,其中 xx 是两位数数字,表示要使用的基数。如果使用大写 R,则大于 10 的基数中的字母在 Qlik Sense 格式化时将变成大写(如 14FA)。非大写的 r 将导致使用非大写字母格式化(如 14fa)。解释对两种变量都可用,忽略代码的大小写。注意,(r02)(bin) 相等,(R16)(HEX) 相等,以此类推。

罗马格式

要表示罗马数字,格式代码前面应带 (rom)(ROM)。如果使用大写版本,格式化将使用大写字(如 MMXVI)。非大写版本将导致格式化使用小写字母(如 mmxvi)。解释对两种变量都可用,忽略代码的大小写。罗马字母负数将产生一个负号,零将产生 0。罗马格式将忽略小数位。

Examples:  

特殊数字格式的示例
示例 结果

num(199, '(bin)')

返回 11000111

num(199, '(oct)')

返回 307

num(199, '(hex)')

返回 c7

num(199, '(HEX)' )

返回 C7

num(199, '(r02)' )

返回 11000111

num(199, '(r16)')

返回 c7

num(199, '(R16)' )

返回 C7

num(199, '(R36)')

返回 5J

num(199, '(rom)')

返回 cxcix

num(199, '(ROM)' )

返回 CXCIX

日期

可以使用下列符号格式化日期。可以使用任意分隔符。

格式化日期的符号
符号 说明
D

要描述日期,每一个数位使用符号 "D"

M

要描述月份,使用符号 "M"

使用 "M""MM" 表示一位或两位数字。

"MMM" 表示以字母表示的短月份名称,由操作系统定义,或由脚本中覆盖系统变量 MonthNames 定义。

"MMMM" 表示以字母表示的长月份名称,由操作系统定义,或由脚本中覆盖系统变量 LongMonthNames 定义。

有关更多信息,请参阅MonthNames LongMonthNames

Y

要描述年,每一个数位使用符号 "Y"

W

要描述周几,使用符号 "W"

"W" 将以一个数位方式返回天的数字(如 0 代表周一)。

"WW" 将返回两位数的数字(如 02 表示周三)。

"WWW" 将显示周名称的短版本(如 Mon),由操作系统定义,或由脚本中覆盖系统变量 DayNames 定义。

"WWWW" 将显示周名称的长版本(如 Monday),由操作系统定义,或由脚本中覆盖系统变量 LongDayNames 定义。

有关更多信息,请参阅DayNames LongDayNames

Examples: (使用 31st March 2013 作为示例日期)

日期格式的示例
示例 结果
YY-MM-DD 描述如 13-03-31 的日期。
YYYY-MM-DD 描述如 3/31/13 的日期。
YYYY-MMM-DD 描述如 2013-Mar-31 的日期。
DD MMMM YYYY 描述如 31 March 2013 的日期。
M/D/YY 描述如 3/31/13 的日期。
W YY-MM-DD 描述如 6 13-03-31 的日期。
WWW YY-MM-DD 描述如 Sat 13-03-31 的日期。
WWWW YY-MM-DD 描述如 Saturday 13-03-31 的日期。

时间

可以使用下列符号格式化时间。可以使用任意分隔符。

格式化时间的符号
符号 说明
h

要描述小时,每一个数位使用符号 "h"

m

要描述分钟,每一个数位使用符号 "m"

s

要描述秒,每一个数位使用符号 "s"

f 要描述分秒,每一个数位使用符号 "f"
tt

要以 AM/PM 格式描述时间,在时间后使用符号 "tt"

Examples: (使用 18.30 作为示例时间):

时间格式的示例
示例 结果
hh:mm 描述如 18:30 的时间。
hh.mm.ss.ff 描述如 18.30.00.00 的时间
hh:mm:tt 描述如 18.30.00.00 的时间。

时间戳

在时间戳中使用的符号与以上在日期和时间中使用的符号相同。

Examples: (使用 31th March 2013 18.30 作为示例时间戳)

时间戳格式的示例
示例 结果
YY-MM-DD hh:mm 描述如 13-03-31 18:30 的时间戳。
M/D/Y hh.mm.ss.ffff 描述如 3/31/13 18.30.00.0000 的时间戳。

在可视化中使用系统字段

可以在可视化中使用系统字段。系统字段是在生成数据加载脚本时由 Qlik Sense 创建的,包括有关加载数据中的字段和表格的信息。系统字段以“$”开头,需要手动输入包含“$”的字段名称才能引用它。您可以使用系统字段来创建作为主条目的维度,也可以通过属性面板来完成此操作。

基于系统字段的维度预览。

Preview of a dimension.

在属性面板中作为维度添加的系统字段。
Properties panel.s