var requests = [
{"createTable": {
"elementProperties":
{"pageObjectId": slideID},
"rows":8,
"columns":4
}},
{"createSheetsChart": {
"spreadsheetId": sheetID,
"chartId": chartID,
"linkingMode":"LINKED",
"elementProperties": {
"pageObjectId": slideID,
"size": {
"height": { ... },
"width": { ... }
},
"transform": { ... }
}
}}
];
少なくとも 1 つのリクエストを格納した変数(ここでは、上の例に合わせて
requests
とします)があり、その中にスプレッドシートの
sheetID
と
chartID
、さらにプレゼンテーション ページの
slideID
が含まれているものとします。これを API に渡し、
presentations().batchUpdate()
コマンドを 1 回呼び出します。この処理は、API のサービス エンドポイントが
SLIDES
である場合、Python で次のように書くことができます。
SLIDES.presentations().batchUpdate(presentationId=slideID,
body=requests).execute()
表の作成はとても単純です。グラフの作成では、魔法のような機能を使うことができます。その 1 つが、
linkingMode
です。これに「LINKED」という値を設定しておくと、スプレッドシートのデータが変更された際に(スプレッドシート内のグラフが変わる場合)プレゼンテーションのスライドでもグラフが更新され、最新のイメージが表示されます。この更新は、API またはスライドのユーザー インターフェースによって行われます。
linkingMode
の値に「NOT_LINKED_IMAGE」を選択すると、データに応じて変更されることのない、旧来の静的なイメージになります。この機能の詳細については、グラフの作成に関する
ドキュメントや、両方の値を使った API リクエストの動作を紹介した動画をご覧ください。
動画で取り上げたコードサンプルの
全容 については、
さらに詳しく取り上げている投稿をご覧ください。両方の API を駆使したアプリの登場を楽しみにしています。
Posted by
Eiji Kitamura - Developer Relations Team