Добавить Google Visualization API сгенерированный график в Google Slide - PullRequest
0 голосов
/ 28 февраля 2020

Я создаю индивидуальные диаграммы благодаря API Google Visualization chart, потому что макеты стандартов, предлагаемые Sheets, не удобны для моих нужд. Эти диаграммы создаются благодаря скрипту Google Apps, развернутому как WebApp. Помимо отображения в реальном времени в моем браузере, я хотел бы упорядочить сгенерированные графики в Google Slide. Знаете ли вы, как я могу встраивать сгенерированные диаграммы через API визуализации в Google Slide (и автоматически обновлять sh при загрузке слайда)?

1 Ответ

1 голос
/ 29 февраля 2020

Я отвечаю себе и передумал. В дополнение к использованию API визуализации Google для создания диаграмм, встроенных в мое WebApp, я разработал еще один код для создания изображений stati c.

Вместо использования API визуализации я перешел к API-интерфейсу диаграммы, подробно здесь: API-интерфейс Google Chart

В стандартном скрипте Google Apps просто используйте этот код для создания требуемого графики:

function getChart() {

  var data = Charts.newDataTable()
    .addColumn(Charts.ColumnType.STRING, 'x')
    .addColumn(Charts.ColumnType.NUMBER, 'act')
    .addColumn(Charts.ColumnType.NUMBER, 'tgt')
    .addColumn(Charts.ColumnType.NUMBER, 'mo')
    .addRow(['A', 90, 95, 150])
    .addRow(['B', 80, 95, 150])
    .addRow(['C', 100, 95, 150])
    .build();


  var chart = Charts.newBarChart()
    .setDataTable(data)
    .setRange(0, 150)
    .setTitle('My Chart')
    .setOption('series', {
      1: { lineWidth: 1, type: 'line'},
      2: { type: 'scatter'}
    })
    .setOption('legend', 'none')
    .setOption('chartArea', {'width': '80%', 'height': '100%'})
    .setColors(['#D9D9D9', '#0085AD'])
    .setOption('annotations', { textStyle: { color: '#000000' }})
    .build();


  var folder=DriveApp.getFolderById('Folder ID');
  folder.createFile(chart.getAs('image/png')).setName('Image name');

}
...