私はJavaScriptにあまり詳しくありませんが、作業中のプロジェクトでは、データベースからの入力を使用してグラフを描画する必要があります。php値をjavascriptに転送するのを手伝ってくれませんか。データベースのデータを使用して円グラフを描きたいだけです。
<div id="pie" style="width:250px;height:250px;">
<?php
$k=0;
if (isset($distrib)){
foreach($distrib as $row){
echo $distrib[$k]['lang'];
echo $distrib[$k]['NumArt'];
$k++;
}
}
?>
<script class="code" type="text/javascript">
$(document).ready(function() {
var data = [];
var plot1 = jQuery.jqplot('pie', [data], {
seriesDefaults: {
// Make this a pie chart.
renderer: jQuery.jqplot.PieRenderer,
rendererOptions: {
// Put data labels on the pie slices.
// By default, labels show the percentage of the slice.
showDataLabels: true
}
},
legend: {
show: false,
location: 'e'
}
});
});
</script>
編集
私はまだこの問題に苦しんでいます。これらのjsチャートは私を殺しています。
だからここに私の悲惨さを終わらせることを願って追加の質問があります
if (isset($distrib)){
foreach($distrib as $row){
$p[] = $distrib[$k]['langName'];
$s[] = $distrib[$k]['lang'];
$q[] = $distrib[$k]['NumArt'];
$k++;
}}
?><?php $c = array_combine($p, $q); ?>
<script class="code" type="text/javascript">$(document).ready(function(){
<?php echo "var s1 = [".implode($c, ",")."];" ?>
var plot3 = $.jqplot('pie', [s1], {
基本的に、現時点ではチャートはnumArtを出力していますが、必要なlangNameは出力されません。Langの名前は、アラビア語からズールー語まで、あらゆる意味のネイティブアルファベットで言語を保存します。JSONを使用してみましたが成功しませんでした(その分野の知識がまったくありません)。私のd/encodingがめちゃくちゃだったので、そのパスを離れました。
私の目標は、言語の名前とその言語の記事の量を含むグラフをレンダリングすることです。
これが
$pのprint_rです
配列([0] => none [1] => Catal[2]=>français[3]=>Malti[4]=>português[5]=>Kiswahili [6] => isiZulu[7]=>英語)。
および$q配列([0] => 1 [1] => 1 [2] => 1 [3] => 2 [4] => 1 [5] => 1 [6] => 1 [7] => 1)
結合された$c配列([none] => 1 [Catal] =>1[français]=>1 [Malti] =>2[português]=>1 [Kiswahili] => 1 [isiZulu] => 1 [英語]=>1)
結局、私はs1がこれらの線に沿ったものである必要があります
[['none'、1]、['français'、1]、['Malti'、1]]