Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
jonnathanr
Contributor III
Contributor III

Legenda de Gráfico combinado

Boa noite, tenho um gráfico de pareto da seguinte forma:

pareto.png

 

Notem que as legendas da dimensão, quando têm um nome maior, começam a cortar....

Eu gostaria de renomear cada uma por uma letra do alfabeto (por exemplo), de forma que formasse uma nova legenda. Ou seja, a primeira barrinha teria a letra 'a', a segunda barrinha a letra 'b', e assim por diante... e lá do lado direito apareceria uma legenda dizendo a = Uberlandia, b = Franca, etc.

Como posso fazer isso ? Ou algo parecido com isso ?

Obrigado!

Jonnathan Rodrigues

1 Solution

Accepted Solutions
IvanOsatchuk
Contributor III
Contributor III

Jonnathan,

acabei criando um 'monstrinho' aqui, mas acho que é um começo para melhorar a ideia

if(index([Campo],' ',2)>0,Replace(Mid([Campo],1,index([Campo],' ',2)) &'#'& Mid([Campo],index([Campo],' ',2)),'#',Chr(10)),[Campo])

Onde faz a quebra apenas no segundo espaço, e se a cidade tiver apenas duas palavras não terá a quebra

View solution in original post

12 Replies
marco_almeida
Creator II
Creator II

Não creio que exista um jeito nativo no Combo Chart pra fazer isso. Então eu faria da seguinte maneira:

  • Criaria o de/para no script igual você fez na descrição;
  • Colocaria no eixo X do combo chart a letra;
  • Ao lado do combo chart uma table com o de/para de cada uma.
Grupo Telegram Qlik Brasil: https://t.me/joinchat/AeRmnUmcxQ02L00g3x-HtQ
IvanOsatchuk
Contributor III
Contributor III

Uma opção seria utilizar uma quebra de linha nos nomes, usando o replace

Replace([Campo],' ',Chr(10))

Talvez fique um pouco melhor.

marco_almeida
Creator II
Creator II

Não ficaria legal, porque nomes que tem mais de um espaço ficaria horrível. Por exemplo, na tela dele, São José do Rio Preto. Ficaria
São
José
do
Rio
Preto
Grupo Telegram Qlik Brasil: https://t.me/joinchat/AeRmnUmcxQ02L00g3x-HtQ
jonnathanr
Contributor III
Contributor III
Author

Obrigado pela resposta Otavio

Mas não fica viável porque são muitos dados, e vários gráficos.

Alguma outra ideia?

jonnathanr
Contributor III
Contributor III
Author

Sua idéia foi bacana, mas caímos no problema que o Otavio disse aqui.

Tem como só dar a quebra de linha caso o número de caracteres seja de um tamanho x ??

Se tiver essa possibilidade, da pra fazer  por exemplo Sao Jose do Rio Preto ficar

Sao Jose do

Rio Preto

jonnathanr
Contributor III
Contributor III
Author

Otavio, sabe se existe uma maneira de só dar a quebra de linha caso o número de caracteres ultrapasse um numero x ??

Por exemplo, dar o replace no espaço vazio por uma quebra de linha só se existir espaço após 10 caracteres. Pq aí sim daria certo, ficaria da seguinte forma:

Sao Jose do 

Rio Preto

marco_almeida
Creator II
Creator II

Você pode cortar a cada 10 símbolos então.

Mid(Campo, 1, 10) & Chr(10) & Mid(Campo, 11)

edit:

Tira os espaços para ficar melhor:

Mid(Replace(Campo, ' ', ''), 1, 10) & Chr(10) & Mid(Replace(Campo, ' ', ''), 11)

Grupo Telegram Qlik Brasil: https://t.me/joinchat/AeRmnUmcxQ02L00g3x-HtQ
jonnathanr
Contributor III
Contributor III
Author

Dessa forma ele divide a palavra em qualquer local que der essa quantidade de caracteres.
Aí fica errado... Dividiu por exemplo
BELO HORIZ
ONTE

A ideia é unir a dica do Ivan com a sua, ou seja, quebrar a linha após 10 caracteres, porém quebrar
no espaço em branco.
Alguma ideia de como fazer isso ?
JacksonAlfonso
Creator
Creator

Montei um exemplo aqui, veja se te atender, tem que pensar em performance ainda, isso eu não validei.

 

Smiley Very Happy

 

Abraços !