Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,038

HOME > PHP > PHP Forum > ขอคำแนะนำ การสร้างกราฟ Bar Gruop โดยใช้ chart.js คะ ต้องการดึงข้อมูลออกมาเปรียบเทียบกัน 3 ปี


[PHP] ขอคำแนะนำ การสร้างกราฟ Bar Gruop โดยใช้ chart.js คะ ต้องการดึงข้อมูลออกมาเปรียบเทียบกัน 3 ปี

 
Topic : 130825



โพสกระทู้ ( 681 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter


ขอคำแนะนำ การสร้างกราฟ Bar Gruop โดยใช้ chart.js คะ ต้องการดึงข้อมูลออกมาเปรียบเทียบกัน 3 ปี คือ 2559 2560 2561
แต่ปัญหาที่เจอตอนนี้คือ มันดึงข้อมูลเฉพาะ ปี 2561 ออกมาแสดงเท่ากันทุกแท่งเลยคะ
พอลองใช้คำสั่ง
Code (PHP)
1.var_dump($totals);

ออกมาดูมัน ออกแบบมานี้คะ แต่พอแสดงกราฟแล้วมัน ดึงข้อมูลแค่นี้ 2561 มาแสดง


Code (PHP)
01.array(1) { [0]=> string(5) "44252" }
02.array(2) { [0]=> string(5) "44252" [1]=> string(5) "40541" }
03.array(3) { [0]=> string(5) "44252" [1]=> string(5) "40541" [2]=> string(5) "43558" }
04.array(4) { [0]=> string(5) "44252" [1]=> string(5) "40541" [2]=> string(5) "43558" [3]=> string(5) "11367" }
05.array(5) { [0]=> string(5) "44252" [1]=> string(5) "40541" [2]=> string(5) "43558" [3]=> string(5) "11367" [4]=> string(1) "0" }
06.array(6) { [0]=> string(5) "44252" [1]=> string(5) "40541" [2]=> string(5) "43558" [3]=> string(5) "11367" [4]=> string(1) "0" [5]=> string(1) "0" }
07.array(7) { [0]=> string(5) "44252" [1]=> string(5) "40541" [2]=> string(5) "43558" [3]=> string(5) "11367" [4]=> string(1) "0" [5]=> string(1) "0" [6]=> string(1) "0" }
08.array(8) { [0]=> string(5) "44252" [1]=> string(5) "40541" [2]=> string(5) "43558" [3]=> string(5) "11367" [4]=> string(1) "0" [5]=> string(1) "0" [6]=> string(1) "0" [7]=> string(1) "0" }
09.array(9) { [0]=> string(5) "44252" [1]=> string(5) "40541" [2]=> string(5) "43558" [3]=> string(5) "11367" [4]=> string(1) "0" [5]=> string(1) "0" [6]=> string(1) "0" [7]=> string(1) "0" [8]=> string(1) "0" }
10.array(10) { [0]=> string(5) "44252" [1]=> string(5) "40541" [2]=> string(5) "43558" [3]=> string(5) "11367" [4]=> string(1) "0" [5]=> string(1) "0" [6]=> string(1) "0" [7]=> string(1) "0" [8]=> string(1) "0" [9]=> string(1) "0" }
11.array(11) { [0]=> string(5) "44252" [1]=> string(5) "40541" [2]=> string(5) "43558" [3]=> string(5) "11367" [4]=> string(1) "0" [5]=> string(1) "0" [6]=> string(1) "0" [7]=> string(1) "0" [8]=> string(1) "0" [9]=> string(1) "0" [10]=> string(1) "0" }
12.array(12) { [0]=> string(5) "44252" [1]=> string(5) "40541" [2]=> string(5) "43558" [3]=> string(5) "11367" [4]=> string(1) "0" [5]=> string(1) "0" [6]=> string(1) "0" [7]=> string(1) "0" [8]=> string(1) "0" [9]=> string(1) "0" [10]=> string(1) "0" [11]=> string(1) "0" }
13.array(13) { [0]=> string(5) "44252" [1]=> string(5) "40541" [2]=> string(5) "43558" [3]=> string(5) "11367" [4]=> string(1) "0" [5]=> string(1) "0" [6]=> string(1) "0" [7]=> string(1) "0" [8]=> string(1) "0" [9]=> string(1) "0" [10]=> string(1) "0" [11]=> string(1) "0" [12]=> string(5) "44252" }


[/php]
Code (PHP)
001.$nowYear = date('Y');
002.$GraphYear = 2016;
003. 
004.for($year=$nowYear;$year>=$GraphYear;$year--)
005.{
006.    for($month=1;$month<=12;$month++)
007.  {
008.       $d_bar =cal_days_in_month(CAL_GREGORIAN, $month, $year);
009.       //echo "There was".$d_bar."days Month" .$month. "year" .$year. "<br>";
010.         
011.       $strBar= "SELECT COUNT (VN) as bargraph FROM DNHOSPITAL_TEST.dbo.HNOPD_MASTER WHERE VisitDate BETWEEN '".$year."-".$month."-1' AND '".$year."-".$month."-".$d_bar."' AND Cxl='0'";   
012.         
013.        $objBar = odbc_exec($conn,$strBar) or die ("Error SQL [".$strBar."]");
014.            while($objRow = odbc_fetch_object($objBar))
015.            {
016.                $totals[]=$objRow->bargraph; 
017.                //var_dump($totals);
018.            }
019.    }
020.  }
021.?>
022.<!DOCTYPE html>
023.<html lang="en">
024.  <head>
025.    <meta charset="utf-8">
026.    <meta http-equiv="X-UA-Compatible" content="IE=edge">
027.    <meta name="viewport" content="width=device-width, initial-scale=1">
028.    <title>ChartJs</title>
029.  
030.  </head>
031.<body>
032.<!--Bar Chart-->
033.<script src="vendor/chart.js/Chart.min.js"></script>
034.<canvas id="chartjs" class="chartjs" width="770" height="385" style="display:block; width 770; height:385px;"></canvas>  
035.    <script>
036.        var ctx = document.getElementById("chartjs");
037.  
038.                var myChart = new Chart(ctx, {
039.                    type: 'bar',
040.                    data: {
041.                        labels: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"],
042.                        datasets: [{
043.                            label: <?=json_encode($year)+3?>,
044.                            data: <?=json_encode($totals, JSON_NUMERIC_CHECK);?>,
045.                        backgroundColor:
046.                            [
047.                                'rgba(21, 140, 131, 0.5)',
048.                                'rgba(21, 140, 131, 0.5)',
049.                                'rgba(21, 140, 131, 0.5)',
050.                                'rgba(21, 140, 131, 0.5)',
051.                                'rgba(21, 140, 131, 0.5)',
052.                                'rgba(21, 140, 131, 0.5)',
053.                                'rgba(21, 140, 131, 0.5)',
054.                                'rgba(21, 140, 131, 0.5)',
055.                                'rgba(21, 140, 131, 0.5)',
056.                                'rgba(21, 140, 131, 0.5)',
057.                                'rgba(21, 140, 131, 0.5)',
058.                                'rgba(21, 140, 131, 0.5)',
059.                            ],
060.                        borderColor:
061.                            [
062.                                'rgba(21, 140, 131, 1)',
063.                                'rgba(21, 140, 131, 1)',
064.                                'rgba(21, 140, 131, 1)',
065.                                'rgba(21, 140, 131, 1)',
066.                                'rgba(21, 140, 131, 1)',
067.                                'rgba(21, 140, 131, 1)',
068.                                'rgba(21, 140, 131, 1)',
069.                                'rgba(21, 140, 131, 1)',
070.                                'rgba(21, 140, 131, 1)',
071.                                'rgba(21, 140, 131, 1)',
072.                                'rgba(21, 140, 131, 1)',
073.                                'rgba(21, 140, 131, 1)',
074.                            ],
075.                            borderWidth: 1
076.                        },{
077.                            label: <?=json_encode(($year)+2)?>,
078.                            data: <?=json_encode($totals, JSON_NUMERIC_CHECK);?>,
079.                        backgroundColor:
080.                            [
081.                                'rgba(137, 133, 133, 0.5)',
082.                                'rgba(137, 133, 133, 0.5)',
083.                                'rgba(137, 133, 133, 0.5)',
084.                                'rgba(137, 133, 133, 0.5)',
085.                                'rgba(137, 133, 133, 0.5)',
086.                                'rgba(137, 133, 133, 0.5)',
087.                                'rgba(137, 133, 133, 0.5)',
088.                                'rgba(137, 133, 133, 0.5)',
089.                                'rgba(137, 133, 133, 0.5)',
090.                                'rgba(137, 133, 133, 0.5)',
091.                                'rgba(137, 133, 133, 0.5)',
092.                                'rgba(137, 133, 133, 0.5)',
093.                            ],
094.                            borderColor:
095.                            [
096.                                'rgba(137, 133, 133, 1)',
097.                                'rgba(137, 133, 133, 1)',
098.                                'rgba(137, 133, 133, 1)',
099.                                'rgba(137, 133, 133, 1)',
100.                                'rgba(137, 133, 133, 1)',
101.                                'rgba(137, 133, 133, 1)',
102.                                'rgba(137, 133, 133, 1)',
103.                                'rgba(137, 133, 133, 1)',
104.                                'rgba(137, 133, 133, 1)',
105.                                'rgba(137, 133, 133, 1)',
106.                                'rgba(137, 133, 133, 1)',
107.                                'rgba(137, 133, 133, 1)',
108.                            ],
109.                            borderWidth: 1
110.                        },{
111.                            label: <?=json_encode(($year)+1)?>,
112.                            data: <?=json_encode($totals, JSON_NUMERIC_CHECK);?>,
113.                        backgroundColor:
114.                            [
115.                                'rgba(0, 90, 90, 0.5)',
116.                                'rgba(0, 90, 90, 0.5)',
117.                                'rgba(0, 90, 90, 0.5)',
118.                                'rgba(0, 90, 90, 0.5)',
119.                                'rgba(0, 90, 90, 0.5)',
120.                                'rgba(0, 90, 90, 0.5)',
121.                                'rgba(0, 90, 90, 0.5)',
122.                                'rgba(0, 90, 90, 0.5)',
123.                                'rgba(0, 90, 90, 0.5)',
124.                                'rgba(0, 90, 90, 0.5)',
125.                                'rgba(0, 90, 90, 0.5)',
126.                                'rgba(0, 90, 90, 0.5)',
127.                            ],
128.                            borderColor:
129.                            [
130.                                'rgba(0, 90, 90, 1)',
131.                                'rgba(0, 90, 90, 1)',
132.                                'rgba(0, 90, 90, 1)',
133.                                'rgba(0, 90, 90, 1)',
134.                                'rgba(0, 90, 90, 1)',
135.                                'rgba(0, 90, 90, 1)',
136.                                'rgba(0, 90, 90, 1)',
137.                                'rgba(0, 90, 90, 1)',
138.                                'rgba(0, 90, 90, 1)',
139.                                'rgba(0, 90, 90, 1)',
140.                                'rgba(0, 90, 90, 1)',
141.                                'rgba(0, 90, 90, 1)',
142.                            ],
143.                            borderWidth: 1
144.                        }]
145.                    },
146.                    options: {
147.                        scales: {
148.                            yAxes: [{
149.                                ticks: {
150.                                    beginAtZero:true
151.                            }
152.                        }]
153.                    },
154.                     responsive: true,
155.                     title: {
156.                        display: true,
157.                        text: 'THAI STATISTICS HOSPITAL PATIENT OF OPD'
158.                    }
159.                }
160.            });
161.</script>
162.<?php
163. 
164.?>
165.</body>
166.</html>


st

ข้อมูล ที่อยู่ Table
dt



Tag : PHP



ประวัติการแก้ไข
2018-04-12 09:36:05
2018-04-12 09:39:35
2018-04-12 09:40:19
2018-04-17 10:18:30
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2018-04-12 09:33:10 By : nottpoo View : 1737 Reply : 2
 

 

No. 1



โพสกระทู้ ( 74,059 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

จาก Error ดูเหมือนว่า DateTime ที่ส่งไปจะผิด Format ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-04-16 13:40:17 By : mr.win
 

 

No. 2



โพสกระทู้ ( 681 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter

พี่วินคะ
แล้วกราฟมันแสดงผลออกมา มันดึงข้อมูลเฉพาะ ปี 2561 ออกมาแสดงเท่ากันทุกแท่ง ทุกปีเลยละคะ
แนะนำน้องตรงนี้หน่อยคะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-04-17 08:35:33 By : nottpoo
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ขอคำแนะนำ การสร้างกราฟ Bar Gruop โดยใช้ chart.js คะ ต้องการดึงข้อมูลออกมาเปรียบเทียบกัน 3 ปี
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)





ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2025 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่