WEBページに、PHPでMySQLのデータを集計し、
表を表示させていたのですが、欲が出てきて、
さらにグラフを表示させたくなりました。
SQLは下記の通り実行させていています。
//SQLはファイルから読み込む
$sql_3 = file_get_contents("test3.sql");
// SQLクエリを実行する
$result_3 = mysqli_query($link, $sql_3);
この状態で、mysqli_fetch_arrayを実行すれば連想配列の
状態で取得できると思っていて、
$data = mysqli_fetch_array($result_3,MYSQLI_ASSOC);
とりあえず、この$dataをCSVに掃き出させ、それからグラフ化しようと考えました。
$fp =fopen('test.csv','w');
foreach ($data as $fields){
fputcsv($fp, $fields);
}
fclose($fp);
しかし、CSVファイルには何も掃き出されず、困っています。
参考にしたサイトは、
http://qq3q.biz/pMcQ
です。
CSVファイルからグラフ作成をしているようです。
別に他にグラフ化できる方法があれば、無理にCSVを使う必要はないと思っています。
他にも、
http://lab.sonicmoov.com/development/morris-js-php-graph/
このサイトを参考にJSON形式への変換も試みましたが、
ダメでした。
$logJson = json_encode($data);
直接サーバにインストールすることはできないので、
JpGraphを使った方法はできないかなと思っています。
何か、解決方法等があれば教えてください。
【追記】
現在、GoogleChartsで折れ線グラフに挑戦中です。
しかし、JSON形式のデータがうまく取り込めず苦しんでいます。
単なる、{項目:値}の形式ではないので、多次元配列やら、jQueryでの処理やらが必要かと思います。
希望する折れ線グラフは、横軸に月(今月(this)、1ヶ月前(one)…)、縦軸にアクセス数で、各アクセスタイプごとに線が引かれる形式です。
JSON形式に出力したファイルの一部を記載します。
【JSON】
{"access_type":"\u30e1\u30cb\u30e5\u30fc(101)","this":"10","one":"76","two":"59","three":"26","four":"59","five":"0","six":"0","seven":"0","eight":"0","nine":"0","ten":"0","eleven":"0","year":"0"}
{"access_type":"\u7c21\u5358\u30ca\u30d3(201)","this":"5","one":"40","two":"15","three":"0","four":"0","five":"0","six":"0","seven":"0","eight":"0","nine":"0","ten":"0","eleven":"0","year":"0"}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/12/10 06:17
退会済みユーザー
2015/12/10 06:19
2015/12/10 06:50
退会済みユーザー
2015/12/10 06:58
2015/12/10 07:28
退会済みユーザー
2015/12/10 07:31
2015/12/10 08:12 編集
退会済みユーザー
2015/12/10 08:15 編集
2015/12/10 09:11
退会済みユーザー
2015/12/10 09:13
2015/12/10 11:02
退会済みユーザー
2015/12/10 13:56
2015/12/11 05:24
退会済みユーザー
2015/12/11 07:25
2015/12/11 07:46
退会済みユーザー
2015/12/11 07:48
2015/12/11 08:34
退会済みユーザー
2015/12/11 09:08 編集
2015/12/11 09:50
退会済みユーザー
2015/12/11 09:55
2015/12/11 10:02 編集
退会済みユーザー
2015/12/11 10:04
2015/12/11 10:11
退会済みユーザー
2015/12/11 10:16
2016/01/07 05:13