Автоматизация создания карт радара в Google Doc с помощью скрипта Google Apps - PullRequest
1 голос
/ 09 июня 2019

Я пытаюсь вставить радиолокационную карту в Документы Google , используя Скрипт Google Apps .Диаграмма в Google Sheets , но в Документах Google она оказалась очень уродливой.

Я нашел сообщение на SO, в котором предлагалось создать диаграмму непосредственно из Apps Script, но это мне тоже не помогло.

Если кто-нибудь может указать на setOptions(), что яможно использовать для достижения желаемого результата, который был бы великолепен.

Это то, что я пытаюсь достичь в Google Docs: Expected Radar Chart

Это мой код:

function createChart() {
var sheet = SpreadsheetApp.openById("SPREADSHEET_ID").getSheetByName("Sheet1");

var chart = sheet.newChart();

chart
.addRange(sheet.getRange("K2:K7"))
.addRange(sheet.getRange("G2:G7"))
.addRange(sheet.getRange("I2:J7"))
.setChartType(Charts.ChartType.RADAR)
.setNumHeaders(1)
.setOption("useFirstColumnAsDomain", true)
.setOption("colors",["#e0296c", "#0000ff", "#ff9900"])
.setOption('width', 700)
.setOption('height', 600)
.setOption('legend', {position: 'bottom', textStyle: {fontSize: 12}})
.setPosition(1,1,0,0)
.setOption('vAxis.gridlines.count', 4)
.setOption('series', {  0: { lineWidth: 1, pointSize: 5},
                        1: { lineDashStyle: [4, 4] },
                        2: { lineDashStyle: [4, 4] }
                        })
.setOption('hAxis.format',{format: 'percent'})

chart = chart.build();

sheet.insertChart(chart);

var doc = DocumentApp.openById("DOC_ID");
var body = doc.getBody();

var chartBlob = chart.getAs('image/png').copyBlob();
body.appendImage(chartBlob);

}

Это то, чего я достиг до сих пор:

в GSHEETS

в GDOCS

1 Ответ

0 голосов
/ 09 июня 2019

Используйте встроенную функцию Google Docs для привязки диаграммы из Google Sheets.Подробные шаги приведены в официальной документации редакторов документов G Suite, но основной шаг заключается в следующем:

Нажмите Вставьте , затем Диаграмма , а затем Из листов .

Выше, потому что полученное изображение преобразования диаграммы в PNG, как вы уже нашли, выглядит не так.С другой стороны, служба электронных таблиц включает в себя встроенную диаграмму класса , а службу документов - нет.

Вы можете попробовать использовать EmdeddedObject из API документов, используяновый расширенный сервис документов .

Ref

Свяжите диаграмму, таблицу или слайды с Документами или слайдами Google

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...