Với output excel mà trên đó cần thể hiện graph, thì có vẻ như ADO không hỗ trợ được. Điều đó có nghĩa là chúng ta phải mở file excel đó lên (Workbooks.Open) để thao tác, điều này sẽ dẫn tới xử lý sẽ bị chậm và mất nhiều thời gian.
Trong trường hợp này mình đề xuất tạo ra output là html sử dụng chart.js để hiển thị đồ thị.
Mình giả thiết có dữ liệu như sau cần hiển thị trên biểu đồ.
File chart.js là mã nguồn mở, cung cấp dưới cuối bài viết.
Ở đây mình tập trung vào nội dung file html :
Kết quả:
Đồ thị liên tục, tôi muốn chỉnh thành dạng xung vuông và đang ở chế độ fill, tức là tô màu vùng dữ liệu khác 0, bây giờ tôi sẽ điều chỉnh thành :
Ngoài ra tôi cũng muốn điều chỉnh màu sắc cho đồ thị. Cụ thể:
Kết quả:
Trong trường hợp này mình đề xuất tạo ra output là html sử dụng chart.js để hiển thị đồ thị.
Mình giả thiết có dữ liệu như sau cần hiển thị trên biểu đồ.
Bạn cần đăng nhập để thấy đính kèm
File chart.js là mã nguồn mở, cung cấp dưới cuối bài viết.
Bạn cần đăng nhập để thấy đính kèm
Ở đây mình tập trung vào nội dung file html :
HTML:
<div>
<canvas id="myChart" style="width:100%;max-width:700px"></canvas>
</div>
<script src="js/Chart.js"></script>
<script>
const ctx = document.getElementById('myChart');
new Chart(ctx, {
type: 'line',
data: {
labels: [0.11,
0.12,
0.13,
0.14,
0.15,
0.16,
0.17,
0.18],
datasets: [{
label: 'THVBA',
data: [0,
0,
0,
1,
1,
1,
0,
0],
borderWidth: 1
}]
},
options: {
scales: {
y: {
beginAtZero: true
}
}
}
});
</script>
Bạn cần đăng nhập để thấy đính kèm
Đồ thị liên tục, tôi muốn chỉnh thành dạng xung vuông và đang ở chế độ fill, tức là tô màu vùng dữ liệu khác 0, bây giờ tôi sẽ điều chỉnh thành :
Mã:
steppedLine: true,
fill: false,
HTML:
<div>
<canvas id="myChart" style="width:100%;max-width:700px"></canvas>
</div>
<script src="js/Chart.js"></script>
<script>
window.chartColors = {
red: 'rgb(255, 99, 132)',
orange: 'rgb(255, 159, 64)',
yellow: 'rgb(255, 205, 86)',
green: 'rgb(75, 192, 192)',
blue: 'rgb(54, 162, 235)',
purple: 'rgb(153, 102, 255)',
grey: 'rgb(201, 203, 207)'
};
const ctx = document.getElementById('myChart');
new Chart(ctx, {
type: 'line',
data: {
labels: [0.11,
0.12,
0.13,
0.14,
0.15,
0.16,
0.17,
0.18],
datasets: [{
label: 'THVBA',
data: [0,
0,
0,
1,
1,
1,
0,
0],
steppedLine: true,
fill: false,
borderColor: window.chartColors.red,
borderWidth: 2
}]
},
options: {
scales: {
y: {
beginAtZero: true
}
}
}
});
</script>
Bạn cần đăng nhập để thấy đính kèm