Gráficos com HighCharts Olá, estou tentando utilizar o HighStock da biblioteca HighCarts, mas como sou leigo com 'js' estou apanhando aqui.... Seguinte, consegui exibir o gráfico com os dados do bd, porem o gráfico só exibe os dados total da busca, quando dou zoom os dados desaparecem do gráfico (anexo). Alguém sabe como resolver esse problema? ...
BI
Gráficos com HighCharts  
Olá, estou tentando utilizar o HighStock da biblioteca HighCarts, mas como sou leigo com 'js' estou apanhando aqui....
Seguinte, consegui exibir o gráfico com os dados do bd, porem o gráfico só exibe os dados total da busca, quando dou zoom os dados desaparecem do gráfico (anexo).
Alguém sabe como resolver esse problema?


 
  1. <?php
  2. public function onSend($param)
  3. {
  4. // get the search form data
  5. $data = $this->form->getData();
  6. $this->form->setData($data);
  7. TForm::sendData('form_chart', $data);
  8. if (($data->variaveis) and isset($data->variaveis)){
  9. $variaveis = "";
  10. foreach($data->variaveis as $var){
  11. $variaveis .= "$var, ";
  12. }
  13. $variaveis = substr($variaveis, 0, -2); // remove a virgula do Final do texto
  14. try{
  15. //conexão com o BD
  16. TTransaction::open('charts');
  17. $conn = TTransaction::get();
  18. // run query
  19. $colunas = $conn->query("SELECT top 1000 convert (varchar(19), E3TimeStamp, 120), $variaveis FROM $data->tabela order by E3TimeStamp desc " );
  20. // show results
  21. $dados = '';
  22. foreach ($colunas as $coluna)
  23. {
  24. $segundos= strtotime($coluna[0].'UTC')*1000;
  25. $dados = $dados . '['.$segundos.','.$coluna[1].'],';
  26. }
  27. $dados = substr($dados,0,-1);
  28. TTransaction::close();
  29. }
  30. catch (Exception $e) // in case of exception
  31. {
  32. new TMessage('error', '<b>Error</b> ' . $e->getMessage());
  33. TTransaction::rollback();
  34. }
  35. }
  36. $script = new TElement('script');
  37. $script->type = 'text/javascript';
  38. $javascript = "
  39. Highcharts.stockChart('container', {
  40. rangeSelector: {
  41. buttons: [{
  42. type: 'hour',
  43. count: 1,
  44. text: '1h'
  45. }, {
  46. type: 'hour',
  47. count: 6,
  48. text: '6h'
  49. }, {
  50. type: 'day',
  51. count: 1,
  52. text: '1d'
  53. }, {
  54. type: 'all',
  55. text: 'All'
  56. }],
  57. selected: 3
  58. },
  59. title: {
  60. text: 'teste de duas linhas'
  61. },
  62. xAxis: {
  63. type: 'datetime'
  64. },
  65. yAxis: {
  66. title: {
  67. text: 'Temperatura (ºC)'
  68. }
  69. },
  70. series: [{
  71. name: 'teste',
  72. data: [ $dados ],
  73. type: 'spline',
  74. dataGrouping: {
  75. enabled: false
  76. },
  77. tooltip: {
  78. valueDecimals: 2
  79. }
  80. }]
  81. });
  82. ";
  83. $script->add($javascript);
  84. parent::add($script);
  85. }
  86. ?>

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 (0)