Làm cách nào để tạo biểu đồ trong PHP?

Đồ thị có thể được tạo theo nhiều cách, từ thủ công đến sử dụng máy tính và các gói phần mềm vẽ đồ thị tinh vi. Bài viết này mô tả ngắn gọn về việc sử dụng PHP để vẽ đồ thị và đặc biệt là gói JpGraph

Có nhiều gói phần mềm giúp tạo đồ thị, biểu đồ bằng PHP. Một gói như vậy là JpGraph. Nó được phát hành theo giấy phép kép QPL 1. 0 [Giấy phép miễn phí Qt] cho mục đích sử dụng mã nguồn mở hoặc giáo dục và Giấy phép chuyên nghiệp JpGraph cho mục đích thương mại. Hãy cùng thảo luận về phiên bản mã nguồn mở của JpGraph trong bài viết này

Cài đặt
Gói có thể được tải xuống từ http. //jpđồ thị. mạng/tải xuống/. Hiện tại, có hai gói khác nhau cho PHP4 và PHP5. Chọn liên kết phù hợp. Bạn có thể giải nén các tệp ở bất kỳ đâu, tốt nhất là trong thư mục gốc của tài liệu [e. g. , /var/www]
Để sử dụng JpGraph, bạn cũng sẽ phải tải xuống thư viện gd cho PHP

- Quảng cáo -

sudo apt-get install php5-gd

Để kiểm tra xem thư viện đã được cài đặt đúng chưa, gõ lệnh sau

php5 -m

Bạn sẽ thấy gd trong danh sách. Xem Hình 1
Đó là nó. Bây giờ chúng ta có thể bắt đầu tạo biểu đồ

Hình 1. gd trong danh sách các thư viện đã cài đặt
Hình 2. Biểu đồ đường

Tạo biểu đồ đường
Chúng ta hãy xem cách tạo một biểu đồ đường đơn giản. Xác định vị trí thư mục chứa jpgraph. php có thể được tìm thấy. Bao gồm tệp này trong mã của bạn

require_once[‘jpgraph/src/jpgraph.php’];

Tiếp theo, để vẽ biểu đồ đường, bạn cần bao gồm jpgraph_line. tập tin php, như sau

require_once[‘jpgraph/src/jpgraph_line.php’];

Bây giờ, để tạo một biểu đồ, hãy khởi tạo lớp Graph bằng cách lần lượt chuyển chiều rộng và chiều cao của nó

Ngoài việc chỉ định trực tiếp dữ liệu biểu đồ [hoặc URL cho tệp lưu trữ dữ liệu biểu đồ] trực tiếp trong mã JSON/XML, bạn cũng có thể tìm nạp dữ liệu cho biểu đồ từ cơ sở dữ liệu

Phần này giới thiệu cách bạn có thể thực hiện việc này bằng cách sử dụng trình bao bọc FusionCharts PHP

Trước khi tiếp tục, hãy đảm bảo bạn đã cài đặt và thiết lập plugin chính xác. Mặc dù bạn có thể tạo tất cả các loại biểu đồ bằng phương pháp này, nhưng trong phần này, chúng tôi sẽ chỉ tập trung vào hai ví dụ này

Tạo biểu đồ cột 2D

Giả sử rằng bạn có cơ sở dữ liệu fusioncharts_phpsample với bảng Quốc gia lưu trữ danh sách các quốc gia có trữ lượng dầu cho năm 2017 đến 2018. Sử dụng dữ liệu trong cơ sở dữ liệu này, bạn muốn vẽ biểu đồ cột 2D hiển thị tám quốc gia hàng đầu có trữ lượng dầu lớn nhất

Bạn có thể tải xuống cơ sở dữ liệu này từ trang web MYSQL hoặc tham khảo cơ sở dữ liệu mẫu có sẵn tại đây

Biểu đồ cột 2D mà chúng ta cần hiển thị ở đây trông như thế này

FusionCharts sẽ tải ở đây

Cấu trúc dữ liệu cần thiết để hiển thị biểu đồ này được đưa ra bên dưới

connect_error] {
    exit["There was an error with your connection: ".$dbhandle->connect_error];
   }
?>


  
    FusionCharts XT - Column 2D Chart - Data from a database
    
    
     
     
  
   
    query[$strQuery] or exit["Error code [{$dbhandle->errno}]: {$dbhandle->error}"];

      // If the query returns a valid response, prepare the JSON string
      if [$result] {
          // The `$arrData` array holds the chart attributes and data
          $arrData = array[
              "chart" => array[
                  "caption" => "Countires With Most Oil Reserves [2018-2019]",
                  "showValues" => "0",
                  "theme" => "fusion"
                ]
            ];

          $arrData["data"] = array[];

  // Push the data into the array
          while[$row = mysqli_fetch_array[$result]] {
            array_push[$arrData["data"], array[
                "label" => $row["Name"],
                "value" => $row["oil_reserves"]
                ]
            ];
          }

          /*JSON Encode the data to retrieve the string containing the JSON representation of the data in the array. */

          $jsonEncodedData = json_encode[$arrData];

  /*Create an object for the column chart using the FusionCharts PHP class constructor. Syntax for the constructor is ` FusionCharts["type of chart", "unique chart id", width of the chart, height of the chart, "div id to render the chart", "data format", "data source"]`. Because we are using JSON data to render the chart, the data format will be `json`. The variable `$jsonEncodeData` holds all the JSON data for the chart, and will be passed as the value for the data source parameter of the constructor.*/

          $columnChart = new FusionCharts["column2D", "myFirstChart" , 700, 400, "chart-1", "json", $jsonEncodedData];

          // Render the chart
          $columnChart->render[];

          // Close the database connection
          $dbhandle->close[];
      }
    ?>
    \
   
COPY

Biểu đồ trên đã được hiển thị bằng các bước sau

  1. Bao gồm tệp ______________ chứa các hàm để nhúng biểu đồ

  2. Thêm các dòng sau cho thông tin kết nối cơ sở dữ liệu. Ghi chú. Ngoài ra, bạn có thể di chuyển các dòng mã này sang một tệp riêng và bao gồm tệp. Bạn cũng có thể sửa đổi mã cho phù hợp trên kết nối cơ sở dữ liệu của mình

    • $hostdb = "localhost"; [Máy chủ MySQl]
    • $userdb = "root"; [tên người dùng MySQL]
    • $passdb = ""; [Mật khẩu MySQL]
    • $namedb = "fusioncharts_phpsample"; [tên cơ sở dữ liệu MySQL]
  3. Thiết lập kết nối đến cơ sở dữ liệu

  4. Hiển thị thông báo lỗi, để tránh lỗi đột ngột, nếu các tham số kết nối cơ sở dữ liệu không chính xác

  5. Bao gồm các tệp JS cần thiết để hiển thị biểu đồ. Ghi chú. Khi bạn tạo biểu đồ của riêng mình, hãy đảm bảo rằng đường dẫn đến tệp JS này là chính xác. Nếu không, bạn sẽ gặp lỗi JavaScript

  6. Tạo truy vấn SQL trả về các quốc gia có trữ lượng dầu lớn nhất

  7. Thực hiện truy vấn hoặc trả về thông báo lỗi. Nếu truy vấn trả về một phản hồi hợp lệ, hãy chuẩn bị chuỗi JSON

  8. Mảng $arrData chứa các thuộc tính và dữ liệu của biểu đồ

  9. Đẩy dữ liệu vào một mảng

  10. JSON Mã hóa dữ liệu để lấy chuỗi chứa biểu diễn JSON của dữ liệu trong mảng

  11. Tạo một đối tượng cho biểu đồ cột bằng cách sử dụng hàm tạo lớp FusionCharts PHP. Trong mẫu trên, dữ liệu JSON đã được sử dụng để hiển thị biểu đồ, vì vậy định dạng dữ liệu sẽ là json. Biến $jsonEncodeData chứa tất cả dữ liệu JSON cho biểu đồ và được chuyển thành giá trị cho tham số nguồn dữ liệu của hàm tạo

    Bạn có thể tạo biểu đồ bằng PHP không?

    Nhiều thư viện biểu đồ PHP phía máy chủ thương mại và miễn phí hiện đã có sẵn. pChart, PHPChartJS, FusionCharts, JpGraph, v.v. là các thư viện PHP để tạo biểu đồ phía máy chủ trên trang web . Việc sử dụng thư viện JpGraph đã được giải thích trong hướng dẫn này bằng cách tạo các loại biểu đồ khác nhau.

    Làm cách nào để tạo biểu đồ đường trong PHP?

    Biểu đồ và đồ thị đường PHP .

    Chủ Đề