Google Sheets API, e-tablolarda aşağıdaki gibi grafikler oluşturmanıza ve mevcut grafikleri güncellemenize olanak tanır: gerekir. Bu sayfadaki örnekler bazı yaygın proje yönetimi yaklaşımlarını E-Tablolar API'si ile grafik işlemlerini görüntüleyin.
Bu örnekler, HTTP istekleri şeklinde sunulur. nötr. Bir toplu güncellemeyi farklı dillerde nasıl uygulayacağınızı öğrenmek için hakkında daha fazla bilgi edinmek için Güncelleme e-tablolar gibi).
Bu örneklerde SPREADSHEET_ID ve SHEET_ID yer tutucuları
bu kimlikleri nereye sağlayacağınızı belirtir. E-tabloyu
kimliği ekleyin. Şundan faydalanabilirsiniz:
sayfa kimliğini değiştirmek için
spreadsheets.get
yöntemini kullanabilirsiniz. İlgili içeriği oluşturmak için kullanılan
aralıklar A1 gösterimi kullanılarak belirtilir.
örnek aralık Sayfa1!A1:D5'tir.
Ayrıca CHART_ID yer tutucusu, belirli bir
grafiğe dökülebilir. E-Tablolar API'siyle grafik oluştururken bu kimliği ayarlayabilirsiniz.
veya Sheets API'nin sizin için bir tane oluşturmasına izin verin. Bu belgelerin
mevcut grafiklerle
spreadsheets.get
yöntemini kullanabilirsiniz.
Son olarak SOURCE_SHEET_ID yer tutucusu, sayfanızı kaynak verilerdir. Aşağıdaki örneklerde bu, Grafik kaynağı altında listelenen tablodur. verileri ile karşılaştırın.
Grafik kaynağı verileri
Bu örnekler için, kullanılan e-tablonun aşağıdaki kaynağa sahip olduğunu varsayalım verilerini ("Sayfa1") kapsar. İlk satırdaki dizeler şuna ait etiketlerdir: tek tek sütunlar. Diğer e-tablolardan nasıl okuyacağınızla ilgili örnekleri görüntülemek için A1 gösterimine bakın.
A | B | C | D | E | |
1 | Model Numarası | Satış - Ocak | Satış - Şub | Satış - Mart | Toplam Satış |
2 | D-01X | 68 | 74 | 60 | 202 |
3 | FR-0B1 | 97 | 76 | 88 | 261 |
4 | P-034 | 27 | 49 | 32 | 108 |
5 | P-105 | 46 | 44 | 67 | 157 |
6 | W-11 | 75 | 68 | 87 | 230 |
7 | W-24 | 74 | 52 | 62 | 188 |
Sütun grafik ekleme
Aşağıdakiler
spreadsheets.batchUpdate
kod örneği,
AddChartRequest
seçeneğini tıklayarak kaynak verilerden sütun grafik oluşturabilir ve bu grafiği yeni bir sayfaya yerleştirebilirsiniz. İlgili içeriği oluşturmak için kullanılan
isteği, grafiği yapılandırmak için şunları yapar:
- Grafik türünü sütun grafik olarak ayarlar.
- Grafiğin alt kısmına gösterge ekler.
- Grafik ve eksen başlıklarını ayarlar.
- 3 farklı ay için satışları temsil eden 3 veri serisi yapılandırırken varsayılan biçimlendirme ve renkleri kullanarak yapabilirsiniz.
İstek protokolü aşağıda gösterilmiştir.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{ "requests": [ { "addChart": { "chart": { "spec": { "title": "Model Q1 Sales", "basicChart": { "chartType": "COLUMN", "legendPosition": "BOTTOM_LEGEND", "axis": [ { "position": "BOTTOM_AXIS", "title": "Model Numbers" }, { "position": "LEFT_AXIS", "title": "Sales" } ], "domains": [ { "domain": { "sourceRange": { "sources": [ { "sheetId": SOURCE_SHEET_ID, "startRowIndex": 0, "endRowIndex": 7, "startColumnIndex": 0, "endColumnIndex": 1 } ] } } } ], "series": [ { "series": { "sourceRange": { "sources": [ { "sheetId": SOURCE_SHEET_ID, "startRowIndex": 0, "endRowIndex": 7, "startColumnIndex": 1, "endColumnIndex": 2 } ] } }, "targetAxis": "LEFT_AXIS" }, { "series": { "sourceRange": { "sources": [ { "sheetId": SOURCE_SHEET_ID, "startRowIndex": 0, "endRowIndex": 7, "startColumnIndex": 2, "endColumnIndex": 3 } ] } }, "targetAxis": "LEFT_AXIS" }, { "series": { "sourceRange": { "sources": [ { "sheetId": SOURCE_SHEET_ID, "startRowIndex": 0, "endRowIndex": 7, "startColumnIndex": 3, "endColumnIndex": 4 } ] } }, "targetAxis": "LEFT_AXIS" } ], "headerCount": 1 } }, "position": { "newSheet": true } } } } ] }
İstek, aşağıdaki gibi yeni bir sayfada bir grafik oluşturur:
Pasta grafik ekle
Aşağıdakiler
spreadsheets.batchUpdate
kod örneği,
AddChartRequest
kullanarak kaynak verilerden 3D pasta grafik oluşturabilirsiniz. İstek şunları yapar:
grafiği yapılandırın:
- Grafik başlığını ayarlar.
- Grafiğin sağına bir gösterge ekler.
- Grafiği 3D pasta grafik olarak ayarlar. 3D pasta grafiklerde "çörek deliği" merkeze koyabilirsiniz.
- Grafik veri dizisini, her model numarası için toplam satış olarak ayarlar.
- Grafiği SHEET_ID tarafından belirtilen sayfanın C3 hücresine sabitler, 50 piksellik bir ofsetle de yapabilirsiniz.
İstek protokolü aşağıda gösterilmiştir.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{ "requests": [ { "addChart": { "chart": { "spec": { "title": "Model Q1 Total Sales", "pieChart": { "legendPosition": "RIGHT_LEGEND", "threeDimensional": true, "domain": { "sourceRange": { "sources": [ { "sheetId": SOURCE_SHEET_ID, "startRowIndex": 0, "endRowIndex": 7, "startColumnIndex": 0, "endColumnIndex": 1 } ] } }, "series": { "sourceRange": { "sources": [ { "sheetId": SOURCE_SHEET_ID, "startRowIndex": 0, "endRowIndex": 7, "startColumnIndex": 4, "endColumnIndex": 5 } ] } }, } }, "position": { "overlayPosition": { "anchorCell": { "sheetId": SHEET_ID, "rowIndex": 2, "columnIndex": 2 }, "offsetXPixels": 50, "offsetYPixels": 50 } } } } } ] }
İstek aşağıdaki gibi bir grafik oluşturur:
Alternatif olarak, LejantPosition değerini RIGHT_LEGEND bölümünden de güncelleyebilirsiniz. isteğe bağlı olarak LABELED_LEGEND öğesine otomatik olarak eklenir. Böylece açıklama değerleri ve dilimlere bağlanmasını sağlar.
'legendPosition': 'LABELED_LEGEND',
Güncellenen istek aşağıdaki gibi bir grafik oluşturur:
Bitişik olmayan birden çok aralık kullanarak çizgi grafik ekleme
Aşağıdakiler
spreadsheets.batchUpdate
kod örneği,
AddChartRequest
seçeneğini tıklayarak kaynak verilerden çizgi grafik oluşturabilir ve bu verileri kaynak sayfaya yerleştirebilirsiniz.
Bitişik olmayan aralıkları seçmek,
ChartSourceRange
.
İstek, grafiği yapılandırmak için şunları yapar:
- Grafik türünü çizgi grafik olarak ayarlar.
- Yatay x ekseni başlığını ayarlar.
- Satışları temsil eden bir veri serisini yapılandırır. A1:A3 ve A6:A7'yi
domain
olarak B1:B3 ve B6:B7'yiseries
, hem de varsayılan biçimlendirmeyi ve renkleri kullanabilirsiniz. Aralıklar, A1 notasyonunu ekleyin. - Grafiği, SHEET_ID tarafından belirtilen sayfanın H8 hücresine sabitler.
İstek protokolü aşağıda gösterilmiştir.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{ "requests": [ { "addChart": { "chart": { "spec": { "basicChart": { "chartType": "LINE", "domains": [ { "domain": { "sourceRange": { "sources": [ { "startRowIndex": 0, "endRowIndex": 3, "startColumnIndex": 0, "endColumnIndex": 1, "sheetId": SOURCE_SHEET_ID }, { "startRowIndex": 5, "endRowIndex": 7, "startColumnIndex": 0, "endColumnIndex": 1, "sheetId": SOURCE_SHEET_ID } ] } } } ], "series": [ { "series": { "sourceRange": { "sources": [ { "startRowIndex": 0, "endRowIndex": 3, "startColumnIndex": 1, "endColumnIndex": 2, "sheetId": SOURCE_SHEET_ID }, { "startRowIndex": 5, "endRowIndex": 7, "startColumnIndex": 1, "endColumnIndex": 2, "sheetId": SOURCE_SHEET_ID } ] } } } ] } }, "position": { "overlayPosition": { "anchorCell": { "sheetId": SOURCE_SHEET_ID, "rowIndex": 8, "columnIndex": 8 } } } } } } ] }
İstek, aşağıdaki gibi yeni bir sayfada bir grafik oluşturur:
Grafik silme
Aşağıdakiler
spreadsheets.batchUpdate
kod örneği,
DeleteEmbeddedObjectRequest
tuşuna basarak CHART_ID tarafından belirtilen bir grafiği silin.
İstek protokolü aşağıda gösterilmiştir.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{ "requests": [ { "deleteEmbeddedObject": { "objectId": CHART_ID } } ] }
Bir grafiğin özelliklerini düzenleme
Aşağıdakiler
spreadsheets.batchUpdate
kod örneği,
UpdateChartSpecRequest
Sütun grafik ekle tarifinde oluşturulan grafiği düzenlemek için
Verilerini, türünü ve görünümünü değiştirme Grafik özelliklerinin alt kümeleri
tek tek değiştirildi. Düzenleme yapmak için spec
alanının tamamını girmeniz gerekir
UpdateChartSpecRequest
ile. Esas olarak, bir grafik spesifikasyonunu
bunun yerine yenisiyle değiştirilmesi gerekir.
Aşağıdaki istek, orijinal grafiği günceller (belirtilen: CHART_ID):
- Grafik türünü
BAR
olarak ayarlar. - Göstergeyi grafiğin sağına taşır.
- Eksenleri ters çevirir ve "Satış" alt eksende ve "Model Numaraları"nda sol eksende yer alıyor.
- Eksen başlığı biçimini 24 punto yazı tipi, kalın ve italik olacak şekilde ayarlar.
- "W-24"ü kaldırır grafikteki veriler (grafik kaynağında 7. satır) verileri) inceleyin.
İstek protokolü aşağıda gösterilmiştir.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{ "requests": [ { "updateChartSpec": { "chartId": CHART_ID, "spec": { "title": "Model Q1 Sales", "basicChart": { "chartType": "BAR", "legendPosition": "RIGHT_LEGEND", "axis": [ { "format": { "bold": true, "italic": true, "fontSize": 24 }, "position": "BOTTOM_AXIS", "title": "Sales" }, { "format": { "bold": true, "italic": true, "fontSize": 24 }, "position": "LEFT_AXIS", "title": "Model Numbers" } ], "domains": [ { "domain": { "sourceRange": { "sources": [ { "sheetId": SOURCE_SHEET_ID, "startRowIndex": 0, "endRowIndex": 6, "startColumnIndex": 0, "endColumnIndex": 1 } ] } } } ], "series": [ { "series": { "sourceRange": { "sources": [ { "sheetId": SOURCE_SHEET_ID, "startRowIndex": 0, "endRowIndex": 6, "startColumnIndex": 1, "endColumnIndex": 2 } ] } }, "targetAxis": "BOTTOM_AXIS" }, { "series": { "sourceRange": { "sources": [ { "sheetId": SOURCE_SHEET_ID, "startRowIndex": 0, "endRowIndex": 6, "startColumnIndex": 2, "endColumnIndex": 3 } ] } }, "targetAxis": "BOTTOM_AXIS" }, { "series": { "sourceRange": { "sources": [ { "sheetId": SOURCE_SHEET_ID, "startRowIndex": 0, "endRowIndex": 6, "startColumnIndex": 3, "endColumnIndex": 4 } ] } }, "targetAxis": "BOTTOM_AXIS" } ], "headerCount": 1 } } } } ] }
İstekten sonra grafik şu şekilde görünür:
Grafiği taşıma veya yeniden boyutlandırma
Aşağıdakiler
spreadsheets.batchUpdate
kod örneği,
UpdateEmbeddedObjectPositionRequest
tıklayın. İstekten sonra, CHART_ID tarafından belirtilen grafik
şununla eşleşir:
- Orijinal sayfasının A5 hücresine sabitlenmiş.
- X yönünde 100 piksel ofset.
- 1.200 x 742 piksel (grafik için varsayılan boyut: 600 x 371 piksel).
İstek yalnızca fields
parametresiyle belirtilen özellikleri değiştirir.
Diğer özellikler (offsetYPixels
gibi) orijinal değerlerini korur.
İstek protokolü aşağıda gösterilmiştir.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{ "requests": [ { "updateEmbeddedObjectPosition": { "objectId": CHART_ID, "newPosition": { "overlayPosition": { "anchorCell": { "rowIndex": 4, "columnIndex": 0 }, "offsetXPixels": 100, "widthPixels": 1200, "heightPixels": 742 } }, "fields": "anchorCell(rowIndex,columnIndex),offsetXPixels,widthPixels,heightPixels" } } ] }
Grafik verilerini okuma
Aşağıdakiler
spreadsheets.get
kod örneği
e-tablodan grafik verilerinin nasıl alınacağını gösterir. fields
sorgu parametresi
yalnızca grafik verilerinin döndürülmesi gerektiğini belirtir.
Bu yöntem çağrısına verilen yanıt
spreadsheet
nesnesini temsil eden nesne
sheet
nesne algılandı. Tüm grafikler
görünümü temsil edilir.
sheet
nesnesini tanımlayın.
yanıt alanı varsayılan değere ayarlanırsa yanıttan çıkarılır.
Bu örnekte, ilk sayfada (SOURCE_SHEET_ID) Böylece boş bir çift küme parantezi döndürülür. İkinci sayfada Sütun grafik ekle tarafından oluşturulmuş grafikten başka bir grafik oluşturmayın.
İstek protokolü aşağıda gösterilmiştir.
GET https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID?fields=sheets(charts)
{ "sheets": [ {}, { "charts": [ { "chartId": CHART_ID, "position": { "sheetId": SHEET_ID }, "spec": { "basicChart": { "axis": [ { "format": { "bold": false, "italic": false }, "position": "BOTTOM_AXIS", "title": "Model Numbers" }, { "format": { "bold": false, "italic": false }, "position": "LEFT_AXIS", "title": "Sales" } ], "chartType": "COLUMN", "domains": [ { "domain": { "sourceRange": { "sources": [ { "endColumnIndex": 1 "endRowIndex": 7, "sheetId": SOURCE_SHEET_ID, "startColumnIndex": 0, "startRowIndex": 0, } ] } } } ], "legendPosition": "BOTTOM_LEGEND", "series": [ { "series": { "sourceRange": { "sources": [ { "endColumnIndex": 2, "endRowIndex": 7, "sheetId": SOURCE_SHEET_ID, "startColumnIndex": 1, "startRowIndex": 0, } ] } }, "targetAxis": "LEFT_AXIS" }, { "series": { "sourceRange": { "sources": [ { "endColumnIndex": 3, "endRowIndex": 7, "sheetId": SOURCE_SHEET_ID, "startColumnIndex": 2, "startRowIndex": 0, } ] } }, "targetAxis": "LEFT_AXIS" }, { "series": { "sourceRange": { "sources": [ { "endColumnIndex": 4, "endRowIndex": 7, "sheetId": SOURCE_SHEET_ID, "startColumnIndex": 3, "startRowIndex": 0, } ] } }, "targetAxis": "LEFT_AXIS" } ] }, "hiddenDimensionStrategy": "SKIP_HIDDEN_ROWS_AND_COLUMNS", "title": "Model Q1 Sales", }, } ] } ] }