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,027

HOME > PHP > PHP Forum > สอบถามเรื่องการนำค่าไปใส่ใน line-chart พอเอาไปใส่แล้วมันขึ้นแค่ค่าสุดท้าย



 

สอบถามเรื่องการนำค่าไปใส่ใน line-chart พอเอาไปใส่แล้วมันขึ้นแค่ค่าสุดท้าย

 



Topic : 136985



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



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




สอบถามหน่อยครับพอดีผมได้ค่าของแต่ละเดือนของแต่ละกลุ่มแล้ว แต่จะนำค่าที่ได้ไปใส่ใน line-chart ยังไงครับ ใส่แล้วมันขึ้นเส้นเดียว
json
Code (PHP)
for ($i = 0; $i < sizeof($getmac); $i++) {
    //---------กราฟเส้นข้อมูลความผิดปกติของกลุ่มเครื่องจักรแต่ละเดือน------//
    $data_month = array();
    $year = date('Y'); //ปีปัจจุบัน
    for ($k = 0; $k < 12; $k++) {
        $month = $k + 1;
        $get_datamonth = getlist("SELECT count(check_detail_id) as num_month FROM `check_detail` WHERE macm_id='" . $getmac[$i]['motor_code_id'] . "' AND status='2' AND group_check IS NULL AND MONTH(datetime_check) = '" . $month . "' AND YEAR(datetime_check) = '" . $year . "'");
        $data_month[] = $get_datamonth[0]['num_month']; //ข้อมูลความผิดปกแต่ละเดือนของแต่ละกลุ่มเครื่องจักร
    }
}

Code (Java)
Code (JavaScript)
var months=<?php echo json_encode($data_month) ?>; // ข้อมูลทั้ง12เดือนของแต่ละกลุ่มเครื่องจักร
new Chart(document.getElementById("line-chart"), {
		type : 'line',
		data : {
			labels : [ 'มกราคม', 'กุมภาพันธ์', 'มีนาคม','เมษายน','พฤษภาคม', 'มิถุนายน','กรกฎาคม', 'สิงหาคม', 'กันยายน', 'ตุลาคม','พฤศจิกายน','ธันวาคม' ],

			datasets : [
					{
						data : months,
						label : "TEST",
						borderColor : "#3cba9f",
						fill : false
					}]
		},
		options : {
			title : {
				display : true,
				text : 'Chart JS Line Chart Example'
			}
		}
	});




Tag : PHP, JavaScript









ประวัติการแก้ไข
2023-04-01 11:21:29
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2023-04-01 11:20:56 By : benlovehi5 View : 200 Reply : 1
 

 
Code (PHP)
<?php
// Step 1: Connect to database
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "database_name";

// Create connection
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);

// Step 2: Retrieve data
$stmt = $conn->prepare("SELECT year, value1, value2, value3 FROM data_table");
$stmt->execute();
$result = $stmt->fetchAll();


/********************************************************************
  Or use data array in place of DB result to see a sample quickly
==============================================

$data_array = array(
    array("year" => "2020", "value1" => 10, "value2" => 20, "value3" => 30),
    array("year" => "2021", "value1" => 70, "value2" => 30, "value3" => 40),
    array("year" => "2022", "value1" => 30, "value2" => 60, "value3" => 10),
    array("year" => "2023", "value1" => 40, "value2" => 50, "value3" => 90)
);

==============================================*/

// Step 3: Format data for Chart.js
$labels = array();
$value1 = array();
$value2 = array();
$value3 = array();

foreach ($result as $row) {
    $labels[] = $row['year'];
    $value1[] = $row['value1'];
    $value2[] = $row['value2'];
    $value3[] = $row['value3'];
}

$data = array(
    "labels" => $labels,
    "datasets" => array(
        array(
            "label" => "Value 1",
            "data" => $value1,
            "borderColor" => "red",
            "backgroundColor" => "red",
            "fill" => false
        ),
        array(
            "label" => "Value 2",
            "data" => $value2,
            "borderColor" => "blue",
            "backgroundColor" => "blue",
            "fill" => false
        ),
        array(
            "label" => "Value 3",
            "data" => $value3,
            "borderColor" => "green",
            "backgroundColor" => "green",
            "fill" => false
        )
    )
);

// Step 4: Display chart using Chart.js
?>

<!DOCTYPE html>
<html>
<head>
    <title>Multiple Line Chart Example</title>
    <script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
</head>
<body>
    <canvas id="myChart"></canvas>

    <script>
        var ctx = document.getElementById("myChart").getContext("2d");
        var myChart = new Chart(ctx, {
        	options: {plugins: {title: {display: true, text: 'Multiple-lines data from DB'}}},
            type: 'line',
            data: <?php echo json_encode($data); ?>
        });
    </script>
</body>
</html>




result:

result






การปรับแต่งต่างๆ อ่านรายละเอียดเพิ่มเติมตามเอกสารการใช้งาน
https://www.chartjs.org/docs/latest/samples/line/line.html






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2023-04-01 22:11:11 By : 009
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : สอบถามเรื่องการนำค่าไปใส่ใน line-chart พอเอาไปใส่แล้วมันขึ้นแค่ค่าสุดท้าย
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

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