Giaoanlink chia sẻ tiếp đến các bạn một project mới về Google sheet Apps Script Chart Vẽ nhiều kiểu biểu đồ trên Webapp. Dữ liệu được lấy từ sheet trên Spreadsheet và biểu thị dưới dạng biểu đồ. Bạn có thể điều chỉnh để hiển thị biểu đồ dạng hình tròn, biểu đồ hình cột và biểu đồ hình line… Màu sắc cũng được chỉnh sửa theo yêu cầu rất dễ dàng. Bên dưới đây là code app script và video hướng dẫn qua.
Bạn cũng có thể tìm ra nhiều project khác tại trang tổng hợp này: mở trang tổng hợp
Các project excel khác:
- VBA Excel Xây dựng hàm chuyển chuỗi có dấu thành không dấu, khoản trắng thành dấu –
- Google sheet Webapp | Lấy dữ liệu trên Sheet hiển thị dạng Bảng có phân trang trùy chọn trên website
- Web App Script | Trang trắc nghiệm online hỗ trợ hình ảnh, lưu file kết quả – Form nhập bộ câu hỏi
- Google sheet Webapp Quản lý Lịch dạy học giáo viên trong trung tâm-Lọc theo Tên-Lớp-Khung giờ -Môn
- Google sheet webapp | CRUD FORM – ĐIỀN THÔNG TIN TỪ FORM VÀO TEMPLATE GOOGLE DOC, KÈM HÌNH ẢNH 1
- Google sheet webapp | Dropdown phụ thuộc – Truy xuất Spreadsheet và các Sheet phụ thuộc từ Folder
- Tạo hóa đơn trên Google sheet – Gửi email đính kèm hóa đơn pdf – Quản lý url hóa đơn trên danh sách
- Google sheet Ứng dụng theo dõi đơn hàng – Danh sách sản phẩm mua, trạng thái đơn hàng
- Tip on Ms Word Hướng dẫn tạo ngắt trang, xóa ngắt trang đơn lẽ hoặc toàn bộ ngắt trang trên file doc
- Google sheet | Generate QR Codes – Mã hóa nội dung Cell – Thêm hình ở giữa mã QR code
Code app script trang “Code.gs”
function doGet() {
return HtmlService.createTemplateFromFile('index')
.evaluate()
.addMetaTag('viewport', 'width=device-width, initial-scale=1')
.setXFrameOptionsMode(HtmlService.XFrameOptionsMode.ALLOWALL)
}
function getData(){
let ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Data')
let dataset = ss.getDataRange().getDisplayValues()
let data1 = dataset.map(r => [r[1],r[2],r[3],r[4],r[5]])
let name = dataset.map(r => [r[0]])
let header = data1.shift()
Logger.log(data1)
Logger.log(header)
return {name: name[2],header: header, data:data1[1]}
}
Code app script trang “index.html”
<!DOCTYPE html>
<html>
<head>
<!--https://youtube.com/netmediacctv-->
<base target="_top">
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
<style>
.border {
border: 3px solid green;
}
</style>
</head>
<body>
<h1 style="text-align: center; color: red"> CHART TRÊN WEBAPP</h1>
<div class="border" style="width: 500px;" >
<canvas id="myChart"></canvas>
</div>
<script>
google.script.run.withSuccessHandler(output).getData()
function output(res) {
const ctx = document.getElementById('myChart') ;
new Chart(ctx, {
type: 'line',
data: {
labels: res.header,
datasets: [{
label: res.name,
data: res.data.map(Number),
backgroundColor: [
'#f20808',
'#08f23f',
'#FF6390',
'#086bf2',
'#f29708',
],
borderColor: '#000000',
borderWidth: 1
}]
},
options: {
scales: {
y: {
beginAtZero: true
}
}
}
});
}
</script>
</body>
</html>