我終於找到了一個方式,通過從PHP端生成解決這個問題,該系列屬性的元素在jqplot在其預期的格式即
series:[{label:Field_1-ID_1,yaxis:'yaxis'},{label:Field_1-ID_2,yaxis:'y2axis'},{label:Field_2-ID_1,yaxis:'y3axis'},{label:Field_2-ID_2,yaxis:'y4axis'}]
如果有人有興趣的話是怎麼做的,請檢查下面的代碼:
$con = mysql_connect($hostname, $username, $password);
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db($database, $con);
$unit = mysql_real_escape_string($_GET["units"]);//ID selected by user, e.g.(ID_1,ID_2)
$stat = mysql_real_escape_string($_GET["start"]);//start time
$stop = mysql_real_escape_string($_GET["stop"]);//stop time
$field1 = mysql_real_escape_string($_GET["fieldlist"]);//Field selected by user, e.g.(Field_1,Field_2)
$first=true;
echo "Label=";
echo "[";
$field = explode(",", $field1);
$count=count($field);
$i=0;$j=1;
while($i<$count)
{
$sq="SELECT su_id FROM Station_stat
WHERE su_id in ($unit) GROUP BY su_id";
$res = mysql_query($sq);
while($row = mysql_fetch_array($res)){
if ($first != true)
{
echo ",";
echo "{label:\"$field[$i] ".$row['su_id']."\",yaxis:\"y".++$j."axis\"}";
}
else
echo "{label:\"$field[$i] ".$row['su_id']."\",yaxis:\"yaxis\"}";
$first = false;
}
++$i;
}
echo "];";
在PHP的輸出是這樣的:
Label=[{label:Field_1-ID_1,yaxis:'yaxis'},{label:Field_1-ID_2,yaxis:'y2axis'},{label:Field_2-ID_1,yaxis:'y3axis'},{label:Field_2-ID_2,yaxis:'y4axis'}];
然後在jqplot函數中,我將系列設置爲Label:
series:Label
那麼你的問題是什麼? – Mark
@Mark謝謝,我的問題是要知道是否有可能使y軸的數字顯示爲動態的(即取決於用戶選擇ID和字段,如果用戶選擇1 ID和1字段,則I只需要1個y軸,如果1個ID和2個字段,那麼我需要2個y軸)。謝謝。 – arewa