A configuração define os atributos de dados e estilo exigidos por uma visualização.
Espera-se que a configuração seja um arquivo JSON com a seguinte estrutura:
{
"data": [{
"id": string,
"label": string,
"elements": [{
"type": enum(DataElement),
"id": string,
"label": string,
"options": object(DataElementOptions)
}]
}],
"style": [{
"id": string,
"label": string,
"elements": [{
"type": enum(StyleElement),
"id": string,
"label": string,
"defaultValue": string | object
}]
}],
"interactions": [{
"id": string,
"supportedActions": array(enum(InteractionType))
}],
"features": {
"enableComparisonDateRange": boolean
}
}
Nome do campo | Tipo | Descrição |
---|---|---|
data[] |
Array(object) |
A configuração de dados da visualização, que afeta o painel Dados do painel de propriedades. |
data[].id |
string |
O código da seção de dados. Precisa ser uma string com algum valor e sem espaços. |
data[].label |
string |
A etiqueta da seção de dados. |
data[].elements[] |
string |
Os elementos de dados que serão renderizados. |
data[].elements[].type |
string enum(DataElement) |
O tipo de elemento de dados que será renderizado. |
data[].elements[].id |
string |
O código do elemento de dados. Precisa ser uma string com algum valor e sem espaços. |
data[].elements[].label |
string |
A etiqueta da dica do elemento de dados. |
data[].elements[].options |
object(DataElementOptions) |
As opções de dados do elemento. Depende do tipo de elemento de dados. |
style[] |
Array(object) |
A configuração de estilo exigida pela visualização, que afeta o painel Estilo do painel de propriedades. Cada objeto na matriz representa um elemento de estilo que será renderizado. A ordem dos elementos determina a ordem em que eles serão processados. |
style[].id |
string |
O código da seção de estilo. Precisa ser uma string com algum valor e sem espaços. |
style[].label |
string |
A etiqueta da seção de estilo. |
style[].elements |
Array(object) |
Os elementos de estilo que serão renderizados. |
style[].elements[].id |
string |
O código do elemento de estilo. Precisa ser uma string com algum valor e sem espaços. |
style[].elements[].type |
string enum(StyleElement) |
Tipo de elemento de estilo. Por exemplo: seletor de fonte. |
style[].elements[].label |
string |
A dica ou etiqueta do elemento de estilo. É o texto da etiqueta de um elemento da caixa de seleção e o texto da dica de outros tipos de elemento. |
style[].elements[].options |
Array(object) |
options do elemento. Válido apenas para os tipos de elemento de estilo SELECT_SINGLE e SELECT_RADIO . |
style[].elements[].defaultValue |
string OR object |
Valor padrão do elemento de estilo. Valores inválidos serão ignorados.* |
interactions[] |
Array(object) |
A configuração de interações da visualização, que determina se a visualização pode atuar como um filtro. |
interactions[].id |
string |
O código do elemento de interação. Precisa ser uma string com algum valor e sem espaços. |
interactions[].supportedActions |
Array (enum(InteractionType) |
As possíveis interações compatíveis. |
features |
object |
Os recursos que você quer ativar ou desativar na visualização. |
features.enableComparisonDateRange |
boolean |
Ative os períodos de comparação. Quando não especificado, o padrão é false . |
*O defaultValue
é uma string usada para tudo, exceto seletores de cores. Para cores, o defaultValue
deve ser um objeto do seguinte formato:
{
color: `string`
}
DataElement
Estes são os possíveis valores dos elementos de dados:
Valor de enum | Descrição |
---|---|
MÉTRICA | Renderiza um elemento de campo de métrica. |
DIMENSION | Processa um elemento de campo de dimensão. |
MAX_RESULTS | Define o máximo de linhas de dados que podem ser solicitadas por essa visualização |
Opções de DataElement
Estes são os possíveis valores dos elementos de dados:
Valor de enum | Tipo de opção | Opções disponíveis |
---|---|---|
MÉTRICA | Objeto | max: number – o número máximo de métricas
min: número – o número mínimo de métricas necessárias |
DIMENSION | Objeto | max: number – o número máximo de dimensões suportadas.
mínimo: número – o número mínimo de dimensões necessárias supportedTypes: a lista de tipos compatíveis. supportedTypes pode incluir TIME , GEO ou DEFAULT
|
MAX_RESULTS | Objeto | max: number – o número máximo de linhas que a visualização pode solicitar. Padrão: 2500 |
StyleElement
Estes são os possíveis valores dos elementos de estilo:
Valor de enum | Descrição | Tipo de dados defaultValue (configuração) |
Tipo de dados value (mensagem) |
Valor padrão |
---|---|---|---|---|
FONT_COLOR | Renderiza o seletor de cores da fonte. Os valores válidos são códigos de cores hexadecimais. | STRING | OBJECT<Color> |
STRING | OBJECT<Color> |
Determinado pelo tema. |
FONT_SIZE | Renderiza o seletor de tamanho da fonte. Valores válidos: | NUMBER |
NUMBER |
12 |
FONT_FAMILY | Renderiza o seletor de família de fontes. Os valores válidos são as seguintes fontes: Arial, e as seguintes fontes: Arial, Boogaloo, Bubbleg | STRING |
STRING |
Determinado pelo tema. |
Caixa de seleção | Renderiza uma caixa de seleção. | BOOLEAN |
BOOLEAN |
false |
TEXTINPUT | Renderiza uma caixa de entrada de texto. | STRING |
STRING |
"" |
TEXTAREA | Renderiza uma área grande de entrada de texto. | STRING |
STRING |
"" |
SELECT_SINGLE | Renderiza uma lista suspensa com valores predefinidos. | STRING (para defaultValue, options.label e options.value) |
STRING |
indefinido |
SELECT_RADIO | Renderiza um seletor de botão de opção com valores predefinidos. | STRING (para defaultValue, options.label e options.value) |
STRING |
indefinido |
FILL_COLOR | Processa um seletor de cores de preenchimento. Os valores válidos são códigos de cores hexadecimais. | STRING | OBJECT<Color> |
OBJECT<Color> |
Determinado pelo tema. |
BORDER_COLOR | Renderiza um seletor de cores de borda. Os valores válidos são códigos de cores hexadecimais. | STRING | OBJECT<Color> |
OBJECT<Color> |
Determinado pelo tema. |
AXIS_COLOR | Processa um seletor de cores do eixo. Os valores válidos são códigos de cores hexadecimais. | STRING | OBJECT<Color> |
OBJECT<Color> |
Determinado pelo tema. |
GRID_COLOR | Renderiza um seletor de cores da grade. Os valores válidos são códigos de cores hexadecimais. | STRING | OBJECT<Color> |
OBJECT<Color> |
Determinado pelo tema. |
OPACIDADE | Renderiza um seletor de opacidade. A unidade é %. Os valores válidos vão de 0 a 1 em incrementos de 0,1. | NUMBER |
NUMBER |
1 |
LINE_WEIGHT | Renderiza um seletor de espessura da linha. Os valores válidos vão de 0 a 5. "0" será renderizado como "None" no menu suspenso. | NUMBER |
NUMBER |
|
LINE_STYLE | Processa um seletor de estilo da linha. Valores padrão aceitáveis: solid , dashed , dotted , double . |
STRING |
STRING |
"solid" |
BORDER_RADIUS | Renderiza um seletor de raio da borda. Os valores válidos são: 0, 1, 2, 3, 4, 5, 10, 15, 20, 25, 30, 40, 50, 60, 70, 80, 90, 100 | NUMBER |
NUMBER |
Determinado pelo tema. |
INTERVAL | Processa um seletor de intervalo. Os valores são números inteiros. | NUMBER |
NUMBER |
0 |
Os elementos de estilo configuram os ícones exibidos na guia Style
do painel de propriedades.
Opções do elemento de estilo
Alguns elementos de estilo são compatíveis com opções
options: array(options)
Valor de tipo enumerado | Objeto de opções |
---|---|
SELECT_SINGLE | { label: `string`, value: `string` } |
SELECT_RADIO | { label: `string`, value: `string` } |
INTERVAL | { max: `number`, min: `number` } |
Tipos de dados
Objeto<Cor>
{
color: STRING<Color>,
opacity: NUMBER<Opacity>
}
STRING<Color>
Um valor de string que contém um código de cor hexadecimal.
Exemplo
"color": "#0000ff"
NÚMERO<Opacidade>
Um valor numérico de 0 a 1 em incrementos de 0,10
Exemplo
"opacity": 0.2
InteractionType
O InteractionTypes configura as opções de interação disponíveis no estilo Data
do painel de propriedades. No momento, somente "FILTER"
é compatível.
Valor de enum | Descrição |
---|---|
"FILTER" |
Permite que os usuários usem a visualização como filtro. |
Exemplo de configuração
{
"data": [{
"id": "concepts",
"label": "concepts",
"elements": [
{
"id": "dimension1",
"label": "first dimension",
"type": "DIMENSION",
"options": {
"min": 1,
"max": 3,
"supportedTypes": ["DEFAULT"]
}
},
{
"id": "metric",
"label": "metric",
"type": "METRIC",
"options": {
"min": 1,
"max": 3
}
}
]
}],
"style": [
{
"id": "colors",
"label": "Highlight Colors",
"elements": [
{
"id": "accentColor",
"label": "Accent Color",
"type": "SELECT_SINGLE",
"defaultValue": "rain",
"options": [
{
"label": "Summer",
"value": "summer"
},
{
"label": "Fall",
"value": "fall"
}
]
},
{
"id": "reverseColor",
"label": "Show reverse color",
"defaultValue": false,
"type": "CHECKBOX"
},
{
"id": "fillColor",
"label": "Fill Color",
"defaultValue": {
"color": "#0000ff"
},
"type": "FILL_COLOR"
},
{
"id": "textOpacity",
"label": "Text Opacity",
"defaultValue": 0.2,
"type": "OPACITY"
},
{
"id": "customText",
"label": "Custom Text",
"defaultValue": "0.2",
"type": "TEXTINPUT"
}
]
},
{
"id": "text",
"label": "Highlight Text",
"elements": [
{
"id": "textFontSize",
"label": "Font size",
"defaultValue": 10,
"type": "FONT_SIZE"
},
{
"id": "font",
"label": "Font family",
"defaultValue": "Arial",
"type": "FONT_FAMILY"
}
]
}
],
"interactions": [
{
"id": "interactionsConfigId",
"supportedActions": ["FILTER"]
}
],
"features": {
"enableComparisonDateRange": false
}
}