Code JavaScript tạo biểu đồ/đồ thị dạng phễu
JavaScript Funnel Chart - Biểu đồ phễu được tạo bằng JavaScript trong thư viện CanvasJS thường dùng cho mục đích trình bày nhiều giai đoạn trong một quá trình. Về cơ bản, nó bao gồm hai phần: phần cao hơn là đầu (hay đế), phần thấp hơn là cổ. Chúng thường được dùng để minh họa quá trình bán hàng.
Dạng biểu đồ phễu trên CanvasJS có tính tương tác, đáp ứng, tương thích chéo nền tảng, hỗ trợ hiệu ứng & xuất dưới dạng ảnh.
Ví dụ bên dưới minh họa một mẫu biểu đồ JavaScript dạng phễu. Bạn sẽ có phần mã nguồn chi tiết ở bên dưới để chỉnh sửa như ý muốn.
<!DOCTYPE HTML>
<html>
<head>
<script>
window.onload = function () {
var chart = new CanvasJS.Chart("chartContainer", {
animationEnabled: true,
theme: "light2", //"light1", "dark1", "dark2"
title:{
text: "Phân tích bán hàng - Tháng 6, 2016"
},
data: [{
type: "funnel",
indexLabelPlacement: "inside",
indexLabelFontColor: "white",
toolTipContent: "<b>{label}</b>: {y} <b>({percentage}%)</b>",
indexLabel: "{label} ({percentage}%)",
dataPoints: [
{ y: 1400, label: "Khách hàng tiềm năng" },
{ y: 1212, label: "Giao tiếp ban đầu" },
{ y: 1080, label: "Đánh giá khách hàng" },
{ y: 665, label: "Đàm phán" },
{ y: 578, label: "Nhận đơn hàng" },
{ y: 549, label: "Thanh toán" }
]
}]
});
calculatePercentage();
chart.render();
function calculatePercentage() {
var dataPoint = chart.options.data[0].dataPoints;
var total = dataPoint[0].y;
for(var i = 0; i < dataPoint.length; i++) {
if(i == 0) {
chart.options.data[0].dataPoints[i].percentage = 100;
} else {
chart.options.data[0].dataPoints[i].percentage = ((dataPoint[i].y / total) * 100).toFixed(2);
}
}
}
}
</script>
</head>
<body>
<div id="chartContainer" style="height: 300px; width: 100%;"></div>
<script src="https://canvasjs.com/assets/script/canvasjs.min.js"></script>
</body>
</html>
Nguồn: CanvasJS
Tùy chỉnh biểu đồ/đồ thị
Bạn có thể thay đổi một số thuộc tính trong code JavaScript để tạo biểu đồ/đồ thị phễu như ý muốn:
neckWidth
&neckHeight
: Độ cao và rộng của phần cổ phễu.valueRepresents
: Đại diện giá trịcolor
: Màu sắcindexLabelPlacement
: Đặt nhãn chỉ mụcfillOpacity
: Độ mờ khi điền thông tin- ...
Bạn nên đọc
Theo Nghị định 147/2024/ND-CP, bạn cần xác thực tài khoản trước khi sử dụng tính năng này. Chúng tôi sẽ gửi mã xác thực qua SMS hoặc Zalo tới số điện thoại mà bạn nhập dưới đây:


Cũ vẫn chất
-
Tổng hợp tất cả các lệnh AutoCAD
Hôm qua -
Cách fake tin nhắn iPhone, chế tin nhắn Messenger
Hôm qua -
Stt năng lượng tích cực truyền cảm hứng và sức mạnh cho bạn
Hôm qua -
Công thức lượng giác đầy đủ nhất cho lớp 9, lớp 10, lớp 11
Hôm qua 1 -
Hướng dẫn tải Minecraft miễn phí trên iPhone
Hôm qua 3 -
Status kỷ niệm ngày yêu siêu lãng mạn cho các cặp đôi
Hôm qua 1 -
Lịch phát sóng VTV1 hôm nay 21/06/2025
Hôm qua -
16 website chuyển văn bản thành giọng nói tốt nhất
Hôm qua -
Danh sách DNS tốt, nhanh nhất của Google, VNPT, FPT, Viettel, Singapore
Hôm qua -
Cách xóa trang trắng trong Word cực dễ
Hôm qua 2