概要
GASから送った値を使いスプレットシートで折れ線グラフを生成する方法を簡単にまとめる。
前提
下記の内容が完了していること。
方法
-
GASのコードを下記の様に書き換える
function makeGraph() { // スプレッドシートIDを指定 var spreadsheetId = '1dEx9lyqlLIJbrepQvmJM7V4T0QuKPGkOJ25mJ9OsVkY'; // スプレッドシートを開く var sheet = SpreadsheetApp.openById(spreadsheetId).getActiveSheet(); const min = 0; const max = 31; const value = getRandomInt(min, max); // スプレッドシートに追加 sheet.appendRow([new Date(), value]); // データ範囲を指定 var lastRow = sheet.getLastRow(); var dataRange = sheet.getRange('A1:B' + lastRow); // 既存のグラフを取得 var charts = sheet.getCharts(); if (charts.length > 0) { // 既存のグラフがある場合は更新 var chart = charts[0].modify() .clearRanges() .addRange(dataRange) .build(); sheet.updateChart(chart); } else { // グラフがない場合は新規作成 var newChart = sheet.newChart() .setChartType(Charts.ChartType.LINE) .addRange(dataRange) .setPosition(5, 5, 0, 0) // グラフの位置を指定 .setOption('title', 'Sample Line Chart') .build(); sheet.insertChart(newChart); } } function getRandomInt(min, max) { const minCeiled = Math.ceil(min); const maxFloored = Math.floor(max); return Math.floor(Math.random() * (maxFloored - minCeiled) + minCeiled); }
-
一旦当該のスプレットシートのデータを削除
-
GASのコードを実行
-
A列B列にデータが追加されてグラフが作図される(何度か実行した例↓)
参考文献