Erro Gráfico Pizza Faixa Etária Estou criando um gráfico de faixa etária. O que estou fazendo de errado? Não está saindo de acordo. Imagem do gráfico em anexo. ...
AR
Erro Gráfico Pizza Faixa Etária  
Estou criando um gráfico de faixa etária.

O que estou fazendo de errado?

Não está saindo de acordo. Imagem do gráfico em anexo.

 
  1. <?php
  2. class GraficoFaixaEtaria extends TPage
  3. {
  4. public function __construct()
  5. {
  6. parent::__construct();
  7. $html = new THtmlRenderer('app/resources/google_pie_chart.html');
  8. $data10 = new DateTime(date('Y-m-d'));
  9. date_sub($data10,date_interval_create_from_date_string('10 years'));
  10. $data10 = date_format($data10,'Y-m-d');
  11. $data15 = new DateTime(date('Y-m-d'));
  12. date_sub($data15,date_interval_create_from_date_string('15 years'));
  13. $data15 = date_format($data15,'Y-m-d');
  14. $data20 = new DateTime(date('Y-m-d'));
  15. date_sub($data20,date_interval_create_from_date_string('20 years'));
  16. $data20 = date_format($data20,'Y-m-d');
  17. $data60 = new DateTime(date('Y-m-d'));
  18. date_sub($data60,date_interval_create_from_date_string('60 years'));
  19. $data60 = date_format($data60,'Y-m-d');
  20. $data80 = new DateTime(date('Y-m-d'));
  21. date_sub($data80,date_interval_create_from_date_string('80 years'));
  22. $data80 = date_format($data80,'Y-m-d');
  23. TTransaction::open('permission');
  24. $criancas = Pessoa::where('nascimento', '>=', $data10)->count();
  25. $adolescentes = Pessoa::where('nascimento', '>', $data15)->where('nascimento', '<=', $data10)->count();
  26. $jovens = Pessoa::where('nascimento', '>', $data20)->where('nascimento', '<=', $data15)->count();
  27. $adultos = Pessoa::where('nascimento', '>', $data60)->where('nascimento', '<=', $data20)->count();
  28. $idosos = Pessoa::where('nascimento', '<', $data80)->where('nascimento', '<=', $data60)->count();
  29. $acima80 = Pessoa::where('nascimento', '<=', $data80)->count();
  30. $dados = [];
  31. $dados[] = ['Membros', 'Faixa Etária'];
  32. $dados[] = ['Crianças (0 a 9)', $criancas];
  33. $dados[] = ['Adolescentes (10 a 14)', $adolescentes];
  34. $dados[] = ['Jovens (15 a 19)', $jovens];
  35. $dados[] = ['Adultos (20 a 59)', $adultos];
  36. $dados[] = ['Idosos (60 a 79)', $idosos];
  37. $dados[] = ['Adima dos 80', $acima80];
  38. $html->enableSection('main', [ 'data' => json_encode($dados),
  39. 'width' => '100%',
  40. 'height' => '300px',
  41. 'title' => 'Membros por Faixa Etária',
  42. 'ytitle' => 'Membros',
  43. 'xtitle' => 'Faixa Etária',
  44. 'uniqid' => uniqid() ] );
  45. TTransaction::close();
  46. parent::add( $html );
  47. }
  48. }

Curso Dominando o Adianti Framework

O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado!


Dominando o Adianti Framework Quero me inscrever agora!

Comentários (1)


AR

Bom dia pessoal,

Consegui resolver!

Segue abaixo o código de referência!

Abraços!

 
  1. <?php
  2. class GraficoFaixaEtaria extends TPage
  3. {
  4. public function __construct()
  5. {
  6. parent::__construct();
  7. $html = new THtmlRenderer('app/resources/google_pie_chart.html');
  8. $date10 = new DateTime(date('Y-m-d'));
  9. date_sub($date10,date_interval_create_from_date_string('10 years'));
  10. $data10 = date_format($date10,'Y-m-d');
  11. $date15 = new DateTime(date('Y-m-d'));
  12. date_sub($date15,date_interval_create_from_date_string('15 years'));
  13. $data15 = date_format($date15,'Y-m-d');
  14. $date20 = new DateTime(date('Y-m-d'));
  15. date_sub($date20,date_interval_create_from_date_string('20 years'));
  16. $data20 = date_format($date20,'Y-m-d');
  17. $date60 = new DateTime(date('Y-m-d'));
  18. date_sub($date60,date_interval_create_from_date_string('60 years'));
  19. $data60 = date_format($date60,'Y-m-d');
  20. $date80 = new DateTime(date('Y-m-d'));
  21. date_sub($date80,date_interval_create_from_date_string('80 years'));
  22. $data80 = date_format($date80,'Y-m-d');
  23. TTransaction::open('permission');
  24. $criancas = Pessoa::where('nascimento', '>=', $data10)->count();
  25. $adolescentes = Pessoa::where('nascimento', '>', $data15)->where('nascimento', '<=', $data10)->count();
  26. $jovens = Pessoa::where('nascimento', '>', $data20)->where('nascimento', '<=', $data15)->count();
  27. $adultos = Pessoa::where('nascimento', '>', $data60)->where('nascimento', '<=', $data20)->count();
  28. $idosos = Pessoa::where('nascimento', '>', $data80)->where('nascimento', '<=', $data60)->count();
  29. $acima80 = Pessoa::where('nascimento', '<=', $data80)->count();
  30. $dados = [];
  31. $dados[] = ['Membros', 'Faixa Etária'];
  32. $dados[] = ['Crianças (0 a 9 anos)', (int)$criancas];
  33. $dados[] = ['Adolescentes (10 a 14 anos)', (int)$adolescentes];
  34. $dados[] = ['Jovens (15 a 19 anos)', (int)$jovens];
  35. $dados[] = ['Adultos (20 a 59 anos)', (int)$adultos];
  36. $dados[] = ['Idosos (60 a 79 anos)', (int)$idosos];
  37. $dados[] = ['Acima dos 80 anos', (int)$acima80];
  38. $html->enableSection('main', [ 'data' => json_encode($dados),
  39. 'width' => '100%',
  40. 'height' => '300px',
  41. 'title' => 'Membros por Faixa Etária',
  42. 'uniqid' => uniqid() ] );
  43. TTransaction::close();
  44. parent::add( $html );
  45. }
  46. }