2016-05-28 1 views
0

Je code suivant:Google Chart - colonnes étiquettes

$rows = array(); 
$table = array(); 
$table['cols'] = array(

    array('label' => 'Date', 'type' => 'string'), 
    array('label' => 'Charging Current', 'type' => 'number'), 
    array('label' => 'Battery Voltage', 'type' => 'number'),  
    array('label' => 'Charging Power', 'type' => 'number'), 
    array('label' => 'Rotation', 'type' => 'number'), 
); 

et se demander comment le changer, pour être en mesure de changer le nombre de colonnes. Afficher les colonnes, en fonction des variables (quelque chose comme ceci):

$rows = array(); 
$table = array(); 
$table['cols'] = array(
    array('label' => 'Date', 'type' => 'string'), 
if ($current == "true") {** 
    array('label' => 'Charging Current', 'type' => 'number'), 
} 
if ($voltage == "true") { 
    array('label' => 'Battery Voltage', 'type' => 'number'),  
} 
if ($power == "true") { 
    array('label' => 'Charging Power', 'type' => 'number'), 
} 
if ($rotation == "true") { 
    array('label' => 'Rotation', 'type' => 'number'), 
} 
); 

$rows = array(); 
while($r = mysql_fetch_assoc($sth)) { 
    $temp = array(); 
    // the following line will be used to slice the chart 
    $temp[] = array('v' => (string) $r['TimeStamp']); 

    // Values of each slice 
    if ($current == "true") { 
     $temp[] = array('v' => (int) $r['ChargingCurrent']); 
     $rows[] = array('c' => $temp); 
    } 
    if ($voltage == "true") { 
     $temp[] = array('v' => (int) $r['BatteryVoltage']); 
     $rows[] = array('c' => $temp); 
    } 
    if ($power == "true") { 
     $temp[] = array('v' => (int) $r['ChargingPower']); 
     $rows[] = array('c' => $temp); 
    } 
    if ($rotation == "true") { 
     $temp[] = array('v' => (int) $r['Rotation']); 
     $rows[] = array('c' => $temp); 
    } 
} 

J'espère que ce que j'essaie de faire est clair. Aidez-moi, s'il vous plaît.

Répondre

0

Ainsi vous pouvez facilement ajouter un article à votre tableau $tables['col']. Pour ajouter quelque chose à un tableau faire:

$table['cols'][] = 'something';

Dans votre cas, votre code serait ressemble à quelque chose comme ceci:

$rows = array(); 
$table = array(); 
$table['cols'] = array(
    array('label' => 'Date', 'type' => 'string') 
); 

if ($current == "true") { 
    $table['cols'][] = array('label' => 'Charging Current', 'type' => 'number'); 
} 
if ($voltage == "true") { 
    $table['cols'][] = array('label' => 'Battery Voltage', 'type' => 'number'); 
} 
if ($power == "true") { 
    $table['cols'][] = array('label' => 'Charging Power', 'type' => 'number'); 
} 
if ($rotation == "true") { 
    $table['cols'][] = array('label' => 'Rotation', 'type' => 'number'); 
} 
); 
+0

Ha ha, je viens de réaliser que vous faites exactement la même chose dans votre code ci-dessous pour les lignes. Je suis sûr que vous pouvez faire exactement la même chose pour les colonnes. Peut-être que je ne comprends pas ce que vous voulez dire ...? – BizzyBob

+0

Merci beaucoup. C'est exactement ce dont j'avais besoin. J'utilise php seulement de temps en temps pour connecter certains projets et je n'arrive pas à trouver comment résoudre ce problème. – Witek