Exemplo n.º 1
0
 public function demoAction()
 {
     /*
      * dataTable for Pie Chart for example (long way - 2 columns) 
      */
     $dataTable1 = new DataTable\DataTable(array('cols' => array(array('id' => 'id1', 'label' => 'label1', 'type' => 'string'), array('id' => 'id2', 'label' => 'label2', 'type' => 'number')), 'rows' => array(array(array('v' => 'auto'), array('v' => 10, 'f' => '10 per hours')), array(array('v' => 'auto row 2'), array('v' => 5, 'f' => '5 per hours')))));
     /*
      * dataTable for Bar Chart for example (3 columns)
      */
     $dataTable2 = new DataTable\DataTable();
     $dataTable2->addColumn('id1', 'label 1', 'string');
     $dataTable2->addColumnObject(new DataTable\DataColumn('id2', 'label 2', 'number'));
     $dataTable2->addColumnObject(new DataTable\DataColumn('id3', 'label 3', 'number'));
     //test cells as array
     $dataTable2->addRow(array(array('v' => 'row 1'), array('v' => 2, 'f' => '2 trucks'), array('v' => 4, 'f' => '4 bikes')));
     //simple cell (not an array)
     $dataTable2->addRow(array('row 2', 5, 1));
     //mixed
     $dataTable2->addRow(array('row 3', array('v' => 5), 10));
     $dataTable2->addRow(array('row 4', array('v' => 2), 0));
     $dataTable2->addRow(array('row 5', array('v' => 0), 10));
     $dataTable2->addRow(array('row 5', 10, 0));
     $dataTable2->addRow(array('row 5', 4, 5));
     /*
      * DataTable with 2 number colums (for Jauge) 
      */
     $dataTable3 = new DataTable\DataTable();
     $dataTable3->addColumnObject(new DataTable\DataColumn('id2', 'label 1', 'number'));
     $dataTable3->addColumnObject(new DataTable\DataColumn('id3', 'label 2', 'number'));
     //test cells as array
     $dataTable3->addRow(array(array('v' => 2, 'f' => '2 trucks'), array('v' => 4, 'f' => '4 bikes')));
     //simple cell (not an array)
     $dataTable3->addRow(array(5, 1));
     //mixed
     $dataTable3->addRow(array(array('v' => 2), 10));
     $dataTable3->addRow(array(array('v' => 2), 10));
     $dataTable4 = new DataTable\DataTable();
     $dataTable4->addColumnObject(new DataTable\DataColumn('id11', 'x', 'number'));
     $dataTable4->addColumnObject(new DataTable\DataColumn('id22', 'label 1', 'number'));
     $dataTable4->addColumnObject(new DataTable\DataColumn('id33', 'label 2', 'number'));
     //test cells as array
     $dataTable4->addRow(array(2, 4, 3));
     //simple cell (not an array)
     $dataTable4->addRow(array(4, 5, 1));
     //mixed
     $dataTable4->addRow(array(6, 3, 4));
     $dataTable4->addRow(array(8, 8, 3));
     $dataTable5 = DataTable\DataTable::fromSimpleMatrix(array(array('col1', 'col2', 'col3'), array('row1', 1, 2), array('row2', 3, 4), array('row3', 4, 5)), true);
     $dataTable6 = DataTable\DataTable::fromSimpleMatrix(array(array('row1', 1, 2), array('row2', 3, 4), array('row3', 4, 5)), false);
     $dataTable7 = DataTable\DataTable::fromSimpleMatrix(array(array('col1', 'col2', 'col3'), array('row1', 1, true), array('row2', 3, false), array('row3', 4, true)), true);
     $myArray[0]['idMonth'] = 'January';
     $myArray[0]['idOne'] = 1;
     $myArray[0]['idTwo'] = 2;
     $myArray[1]['idMonth'] = 'February';
     $myArray[1]['idThree'] = 33;
     $myArray[2]['idMonth'] = 'March';
     $myArray[2]['idTwo'] = 2;
     $myArray[2]['idOne'] = 1;
     $myArray[2]['idThree'] = 33;
     //------------
     $dt = new DataTable\DataTable();
     $dt->addColumn('idMonth', 'Months', 'string');
     $dt->addColumn('idOne', 'One', 'number');
     $dt->addColumn('idTwo', 'Two', 'number');
     $dt->addColumn('idThree', 'Three', 'number');
     //------------
     $dt->addRows($myArray);
     $dataTable8 = new DataTable\DataTable();
     $dataTable8->addColumnObject(new DataTable\DataColumn('id1', 'year', 'date'));
     $dataTable8->addColumnObject(new DataTable\DataColumn('id2', 'movies', 'number'));
     $dataTable8->addRow(array(new \DateTime('2009-01-01'), 12));
     $dataTable8->addRow(array(new \DateTime('2009-02-01'), 9));
     $dataTable8->addRow(array(new \DateTime('2009-03-01'), 16));
     // for candlestick: requires 5 cols: one string and 4 numbers
     $dt9 = new DataTable\DataTable();
     $dt9->addColumn('what', 'What', 'string');
     $dt9->addColumn('idOne', 'One', 'number');
     $dt9->addColumn('idTwo', 'Two', 'number');
     $dt9->addColumn('idThree', 'Three', 'number');
     $dt9->addColumn('idFour', 'Four', 'number');
     $dt9->addRow(array('candle 1', 1, 2, 3, 4));
     $dt9->addRow(array('candle 2', 1, 2.5, 3.5, 3.75));
     $dt9->addRow(array('candle 3', 2, 2.5, 3.5, 3.75));
     // for treemap: requires 4 cols
     $dt10 = new DataTable\DataTable();
     $dt10->addColumn('region', 'Region', 'string');
     $dt10->addColumn('parent', 'Parent', 'string');
     $dt10->addColumn('nb1', 'Number 1 (size)', 'number');
     $dt10->addColumn('nb2', 'Number 2 (color - optional)', 'number');
     $dt10->addRow(array("Global", null, 0, 0));
     $dt10->addRow(array("America", "Global", 0, 0));
     $dt10->addRow(array("Europe", "Global", 0, 0));
     $dt10->addRow(array("Asia", "Global", 0, 0));
     $dt10->addRow(array("Australia", "Global", 0, 0));
     $dt10->addRow(array("Africa", "Global", 0, 0));
     $dt10->addRow(array("Brazil", "America", 11, 10));
     $dt10->addRow(array("USA", "America", 52, 31));
     $dt10->addRow(array("Mexico", "America", 24, 12));
     $dt10->addRow(array("Canada", "America", 16, -23));
     $dt10->addRow(array("France", "Europe", 42, -11));
     $dt10->addRow(array("Germany", "Europe", 31, -2));
     $dt10->addRow(array("Sweden", "Europe", 22, -13));
     $dt10->addRow(array("Italy", "Europe", 17, 4));
     $dt10->addRow(array("UK", "Europe", 21, -5));
     $dt10->addRow(array("China", "Asia", 36, 4));
     $dt10->addRow(array("Japan", "Asia", 20, -12));
     $dt10->addRow(array("India", "Asia", 40, 63));
     $dt10->addRow(array("Laos", "Asia", 4, 34));
     $dt10->addRow(array("Mongolia", "Asia", 1, -5));
     $dt10->addRow(array("Israel", "Asia", 12, 24));
     $dt10->addRow(array("Iran", "Asia", 18, 13));
     $dt10->addRow(array("Pakistan", "Asia", 11, -52));
     $dt10->addRow(array("Egypt", "Africa", 21, 0));
     $dt10->addRow(array("S. Africa", "Africa", 30, 43));
     $dt10->addRow(array("Sudan", "Africa", 12, 2));
     $dt10->addRow(array("Congo", "Africa", 10, 12));
     $dt10->addRow(array("Zair", "Africa", 10, 12));
     return $this->render('SaadTaziGChartBundle:Demo:demo.html.twig', array('dt' => $dt->toStrictArray(), 'dataTable1' => $dataTable1->toArray(), 'rawDataTable1' => $dataTable1, 'dataTable2' => $dataTable2->toArray(), 'dataTable3' => $dataTable3->toArray(), 'dataTable4' => $dataTable4->toArray(), 'dataTable5' => $dataTable5->toArray(), 'dataTable6' => $dataTable6->toArray(), 'dataTable7' => $dataTable7->toArray(), 'dataTable8' => $dataTable8->toArray(), 'dt9' => $dt9->toArray(), 'dt10' => $dt10->toArray()));
 }
Exemplo n.º 2
0
 public function demoAction()
 {
     /*
      * dataTable for Pie Chart for example (long way - 2 columns) 
      */
     $dataTable1 = new DataTable\DataTable(array('cols' => array(array('id' => 'id1', 'label' => 'label1', 'type' => 'string'), array('id' => 'id2', 'label' => 'label2', 'type' => 'number')), 'rows' => array(array(array('v' => 'auto'), array('v' => 10, 'f' => '10 per hours')), array(array('v' => 'auto row 2'), array('v' => 5, 'f' => '5 per hours')))));
     /*
      * dataTable for Bar Chart for example (3 columns)
      */
     $dataTable2 = new DataTable\DataTable();
     $dataTable2->addColumn('id1', 'label 1', 'string');
     $dataTable2->addColumnObject(new DataTable\DataColumn('id2', 'label 2', 'number'));
     $dataTable2->addColumnObject(new DataTable\DataColumn('id3', 'label 3', 'number'));
     //test cells as array
     $dataTable2->addRow(array(array('v' => 'row 1'), array('v' => 2, 'f' => '2 trucks'), array('v' => 4, 'f' => '4 bikes')));
     //simple cell (not an array)
     $dataTable2->addRow(array('row 2', 5, 1));
     //mixed
     $dataTable2->addRow(array('row 3', array('v' => 5), 10));
     $dataTable2->addRow(array('row 4', array('v' => 2), 0));
     $dataTable2->addRow(array('row 5', array('v' => 0), 10));
     $dataTable2->addRow(array('row 5', 10, 0));
     $dataTable2->addRow(array('row 5', 4, 5));
     /*
      * DataTable with 2 number colums (for Jauge) 
      */
     $dataTable3 = new DataTable\DataTable();
     $dataTable3->addColumnObject(new DataTable\DataColumn('id2', 'label 1', 'number'));
     $dataTable3->addColumnObject(new DataTable\DataColumn('id3', 'label 2', 'number'));
     //test cells as array
     $dataTable3->addRow(array(array('v' => 2, 'f' => '2 trucks'), array('v' => 4, 'f' => '4 bikes')));
     //simple cell (not an array)
     $dataTable3->addRow(array(5, 1));
     //mixed
     $dataTable3->addRow(array(array('v' => 2), 10));
     $dataTable3->addRow(array(array('v' => 2), 10));
     $dataTable4 = new DataTable\DataTable();
     $dataTable4->addColumnObject(new DataTable\DataColumn('id11', 'x', 'number'));
     $dataTable4->addColumnObject(new DataTable\DataColumn('id22', 'label 1', 'number'));
     $dataTable4->addColumnObject(new DataTable\DataColumn('id33', 'label 2', 'number'));
     //test cells as array
     $dataTable4->addRow(array(2, 4, 3));
     //simple cell (not an array)
     $dataTable4->addRow(array(4, 5, 1));
     //mixed
     $dataTable4->addRow(array(6, 3, 4));
     $dataTable4->addRow(array(8, 8, 3));
     $dataTable5 = DataTable\DataTable::fromSimpleMatrix(array(array('col1', 'col2', 'col3'), array('row1', 1, 2), array('row2', 3, 4), array('row3', 4, 5)), true);
     $dataTable6 = DataTable\DataTable::fromSimpleMatrix(array(array('row1', 1, 2), array('row2', 3, 4), array('row3', 4, 5)), false);
     $dataTable7 = DataTable\DataTable::fromSimpleMatrix(array(array('col1', 'col2', 'col3'), array('row1', 1, true), array('row2', 3, false), array('row3', 4, true)), true);
     $myArray[0]['idMonth'] = 'January';
     $myArray[0]['idOne'] = 1;
     $myArray[0]['idTwo'] = 2;
     $myArray[1]['idMonth'] = 'February';
     $myArray[1]['idThree'] = 33;
     $myArray[2]['idMonth'] = 'March';
     $myArray[2]['idTwo'] = 2;
     $myArray[2]['idOne'] = 1;
     $myArray[2]['idThree'] = 33;
     //------------
     $dt = new DataTable\DataTable();
     $dt->addColumn('idMonth', 'Months', 'string');
     $dt->addColumn('idOne', 'One', 'number');
     $dt->addColumn('idTwo', 'Two', 'number');
     $dt->addColumn('idThree', 'Three', 'number');
     //------------
     $dt->addRows($myArray);
     $dataTable8 = new DataTable\DataTable();
     $dataTable8->addColumnObject(new DataTable\DataColumn('id1', 'year', 'date'));
     $dataTable8->addColumnObject(new DataTable\DataColumn('id2', 'movies', 'number'));
     $dataTable8->addRow(array(new \DateTime('2009-01-01'), 12));
     $dataTable8->addRow(array(new \DateTime('2009-02-01'), 9));
     $dataTable8->addRow(array(new \DateTime('2009-03-01'), 16));
     return $this->render('SaadTaziGChartBundle:Demo:demo.html.twig', array('dt' => $dt->toStrictArray(), 'dataTable1' => $dataTable1->toArray(), 'rawDataTable1' => $dataTable1, 'dataTable2' => $dataTable2->toArray(), 'dataTable3' => $dataTable3->toArray(), 'dataTable4' => $dataTable4->toArray(), 'dataTable5' => $dataTable5->toArray(), 'dataTable6' => $dataTable6->toArray(), 'dataTable7' => $dataTable7->toArray(), 'dataTable8' => $dataTable8->toArray()));
 }
Exemplo n.º 3
0
 public function testFromSimpleMatrix()
 {
     $matrix = array(array('row1', 1, true, new \DateTime('2010-01-14')), array('row2', 3, false, new \DateTime('2010-02-15')), array('row3', 4, true, new \DateTime('2010-03-16')), array('row4', null, true, null));
     $dataTable1 = DataTable::fromSimpleMatrix($matrix, false);
     //var_dump($dataTable1->toArray());die();
     $this->assertEquals($dataTable1->toArray(), array('cols' => array(array('id' => 'id0', 'label' => 'c0', 'type' => 'string'), array('id' => 'id1', 'label' => 'c1', 'type' => 'number'), array('id' => 'id2', 'label' => 'c2', 'type' => 'boolean'), array('id' => 'id3', 'label' => 'c3', 'type' => 'datetime')), 'rows' => array(array('c' => array(array('v' => 'row1'), array('v' => 1), array('v' => true), array('v' => "[new Date](2010,1,14,0,00,00)[new Date]"))), array('c' => array(array('v' => 'row2'), array('v' => 3), array('v' => false), array('v' => "[new Date](2010,2,15,0,00,00)[new Date]"))), array('c' => array(array('v' => 'row3'), array('v' => 4), array('v' => true), array('v' => "[new Date](2010,3,16,0,00,00)[new Date]"))), array('c' => array(array('v' => 'row4'), array(), array('v' => true), array()))), 'p' => array()));
     $matrix2 = array(array('col1', 'col2', 'col3'), array('row1', 3, true), array('row2', null, null), array(null, 4, false));
     $dataTable2 = DataTable::fromSimpleMatrix($matrix2, true);
     $this->assertEquals($dataTable2->toArray(), array('cols' => array(array('id' => 'id0', 'label' => 'col1', 'type' => 'string'), array('id' => 'id1', 'label' => 'col2', 'type' => 'number'), array('id' => 'id2', 'label' => 'col3', 'type' => 'boolean')), 'rows' => array(array('c' => array(array('v' => 'row1'), array('v' => 3), array('v' => true))), array('c' => array(array('v' => 'row2'), array(), array())), array('c' => array(array(), array('v' => 4), array('v' => false)))), 'p' => array()));
 }