TChart e Imagens Bitmap

Delphi

30/07/2013

Boa tarde, pessoALL!

Alguém aqui conhece bem o componente TChart? Estou precisando fazer um gráfico em LINHA e colocar uma imagem em cada ponto da série. O próprio Tchart (temos aqui o pacote PRO completo) possui um tipo desse jeito, só que ele troca todas as imagens, e posso ter até 4 tipos de imagens em um mesmo gráfico. Essas imagens não são fixas, elas são de uma legenda própria. Não sei se o Tchart permite que eu desenhe ou coloque essas imagens em run-time.

Alguém pode me dar uma luz?

O que preciso fazer é mais ou menos isso aí dessa foto:
www.brahmsoftware.com/clients/clinicacoser2011/wp-content/uploads/2011/07/seu_exame_da_audicao_e_do_labirinto_clip_image002.jpg

O problema é que esses símbolos que estão aí mudaram todos e eles não existem no Tchart? Tenho que tê-los em arquivos bitmaps e colocá-los em cada ponto...

Qualquer ajuda é bem vinda!!!!
Adilson Júnior

Adilson Júnior

Curtidas 0

Respostas

Jean Carvalho

Jean Carvalho

30/07/2013

Amigo,

Conseguiu resolver seu problema com o gráfico? Também estou com o mesmo problema. Preciso inserir imagens, e as unicas que consigo são as do shape que existem nas series do grafico.
GOSTEI 0
Adilson Júnior

Adilson Júnior

30/07/2013

Boa tarde! Ainda não... O que eu consegui foi usar o TPoint Series para cada imagem que preciso, ou seja, eu terei 6 Séries num mesmo gráfico. O problema é que não estou conseguindo usar null para que ele coloque o ponto (mesmo não tendo) para todas as séries fiquem iguais...
GOSTEI 0
Jean Carvalho

Jean Carvalho

30/07/2013

Você esta tentando fazer o mesmo gráfico que eu. Com o tipo Shape eu consigo colocar o Triangulo o Circulo e o X.
Porém não consigo colocar os sinais de < > e [ ] para via óssea. Conseguiu inserir estes elementos?
GOSTEI 0
Adilson Júnior

Adilson Júnior

30/07/2013

Deixa eu te explicar melhor como estou "tentando" fazer...
Utilizei a series TPoint Image! Ela só está disponível na versão PRO. Com ela, você pode escolher a imagem que quer exibir (tamanho 16x16 pixels). Existem dois problemas com essa série: o primeiro é que a imagem é única, ou seja, você não tem como colocar via aérea ( o ) e aérea mascarada ( <o ) na mesma série. Ele só aceita 1 (uma) imagem por série. Se tu trocar, como eu tentei fazer, ele trocar todo o gráfico. Daí fiz o seguinte: coloquei uma outra série, na verdade 1 para cada tipo de imagem. Quando num certo ponto, por exemplo, é "mascarado" eu adiciono ele a série mascarado. Deu uma mão de obra danada fazer... Porque além da via aérea e óssea, existem elas mascaradas ou não e também ausência de audição, que é outro símbolo. No site da Federação de Fonoaudiologia tem os símbolos novos. Se quiser, me mande um e-mail (juniorcapua@gmail.com) que te mando o PDF com eles! Bom, o segundo problema que estou passando e que ainda não resolvi é relacionado a pontos nulos. Me parece que essa série não aceita ponto nulo, e isso é fundamental para fazer da forma como estou tentando. Imagine que a série 1 é a série normal aérea. Daí em 0,500 Khz acontece um mascaramento. Nessa série do mascaramento, tenho que primeiro adicionar os pontos inicias 0,125 e 0,250 para depois inserir o ponto 0,500! Se adicionar o 0,500 sozinho, a linha de base do eixo X fica errada! Se consegui inseri pontos nulos, resolvo o problema de vez...

Se não consegui, penso em fazer o gráfico na mão, usando canvas, num componente TImage... Desenho a grade com as frequências e as perdas no Paint por exemplo e depois vou pintando o gráfico. Vou perder um tempo danado pra fazer, mas vai ser a única forma.

Um outro jeito é tentar desenhar essas imagens diretamente no gráfico (usando o método canvasdraw do Tchart), mas também não estou conseguindo. Se tu consegui, me fala... Estou terminando um projeto para uma clínica e só me falta o danado do laudo de audiometria. Aliás, só falta o gráfico mesmo porque o laudo já está pronto e funcionando!
GOSTEI 0
Adilson Júnior

Adilson Júnior

30/07/2013

Amigo,

Tu conseguiu fazer o gráfico usando o Tchart?!?

Um Abraço!


Você esta tentando fazer o mesmo gráfico que eu. Com o tipo Shape eu consigo colocar o Triangulo o Circulo e o X.
Porém não consigo colocar os sinais de < > e [ ] para via óssea. Conseguiu inserir estes elementos?
GOSTEI 0
Jean Carvalho

Jean Carvalho

30/07/2013

Ei Adilson,

Consegui resolver, colocando TLabel em cima do grafico, e posicionando eles de acordo com o grafico de linha. Funcionou blz.

Fiz assim:
Coloquei em cada coluna (frequencia), os simbolos (bola,triangulo, menor e colchete no caso da orelha direita). Aí de acordo com os decibeis que o usuario preenche, eu posiciono as labels em cima da frequencia. Funcionou blz tanto no formulario quanto no Fortes Report.
GOSTEI 0
Adilson Júnior

Adilson Júnior

30/07/2013

Olá Jean!

Você colocou um TLabel em cada posição? Entendi meio que sem entender... hehehehe
Tem como tu me enviar uma cópia do form de como você fez? A forma como eu fiz (aliás, ainda estou trabalhando nisso) ficou muito complexa... Pra dá manutenção tá complicado, além da possibilidade de erro ser muito maior... Gostaria de dar uma olhada no seu código! Teria como? Te agradeceria muito... Se der, mande só o form e o pas para juniorcapua@gmail.com!

Um abraço!

Ei Adilson,

Consegui resolver, colocando TLabel em cima do grafico, e posicionando eles de acordo com o grafico de linha. Funcionou blz.

Fiz assim:
Coloquei em cada coluna (frequencia), os simbolos (bola,triangulo, menor e colchete no caso da orelha direita). Aí de acordo com os decibeis que o usuario preenche, eu posiciono as labels em cima da frequencia. Funcionou blz tanto no formulario quanto no Fortes Report.
GOSTEI 0
Stefan Buchenrode

Stefan Buchenrode

30/07/2013

Olá Jean!

Você colocou um TLabel em cada posição? Entendi meio que sem entender... hehehehe
Tem como tu me enviar uma cópia do form de como você fez? A forma como eu fiz (aliás, ainda estou trabalhando nisso) ficou muito complexa... Pra dá manutenção tá complicado, além da possibilidade de erro ser muito maior... Gostaria de dar uma olhada no seu código! Teria como? Te agradeceria muito... Se der, mande só o form e o pas para juniorcapua@gmail.com!

Um abraço!

Ei Adilson,

Consegui resolver, colocando TLabel em cima do grafico, e posicionando eles de acordo com o grafico de linha. Funcionou blz.

Fiz assim:
Coloquei em cada coluna (frequencia), os simbolos (bola,triangulo, menor e colchete no caso da orelha direita). Aí de acordo com os decibeis que o usuario preenche, eu posiciono as labels em cima da frequencia. Funcionou blz tanto no formulario quanto no Fortes Report.



Boa noite!

Estou precisando resolver a mesma coisa tem como enviar no mail stefan@alfameta.com.br se possível a solução destes gráficos.
Obrigado

GOSTEI 0
POSTAR