Pivot Tables

PivotTable

Tabel pivot.

Representasi JSON
{
  "rows": [
    {
      object (PivotGroup)
    }
  ],
  "columns": [
    {
      object (PivotGroup)
    }
  ],
  "criteria": {
    integer: {
      object (PivotFilterCriteria)
    },
    ...
  },
  "filterSpecs": [
    {
      object (PivotFilterSpec)
    }
  ],
  "values": [
    {
      object (PivotValue)
    }
  ],
  "valueLayout": enum (PivotValueLayout),
  "dataExecutionStatus": {
    object (DataExecutionStatus)
  },

  // Union field source_data can be only one of the following:
  "source": {
    object (GridRange)
  },
  "dataSourceId": string
  // End of list of possible types for union field source_data.
}
Kolom
rows[]

object (PivotGroup)

Pengelompokan setiap baris dalam tabel pivot.

columns[]

object (PivotGroup)

Pengelompokan setiap kolom dalam tabel pivot.

criteria
(deprecated)

map (key: integer, value: object ( PivotFilterCriteria))

Pemetaan opsional untuk filter per offset kolom sumber.

Filter diterapkan sebelum menggabungkan data ke tabel pivot. Kunci peta adalah offset kolom dari rentang sumber yang ingin Anda filter, dan nilainya adalah kriteria untuk kolom tersebut.

Misalnya, jika sumbernya adalah C10:E15, kunci 0 akan memiliki filter untuk kolom C, sedangkan kunci 1 adalah untuk kolom D.

Kolom ini tidak digunakan lagi dan digantikan dengan filterSpecs.

filterSpecs[]

object (PivotFilterSpec)

Filter yang diterapkan ke kolom sumber sebelum menggabungkan data untuk tabel pivot.

Baik criteria maupun filterSpecs diisi sebagai respons. Jika kedua kolom tersebut ditentukan dalam permintaan pembaruan, kolom ini akan diprioritaskan.

values[]

object (PivotValue)

Daftar nilai yang akan disertakan dalam tabel pivot.

valueLayout

enum (PivotValueLayout)

Apakah nilai harus dicantumkan secara horizontal (sebagai kolom) atau secara vertikal (sebagai baris).

dataExecutionStatus

object (DataExecutionStatus)

Hanya output. Status eksekusi data untuk tabel pivot sumber data.

Kolom union source_data. Sumber data tabel pivot. source_data hanya dapat berupa salah satu dari berikut:
source

object (GridRange)

Rentang yang digunakan tabel pivot untuk membaca data.

dataSourceId

string

ID sumber data yang digunakan oleh tabel pivot.

Grup Pivot

Pengelompokan tunggal (baik baris atau kolom) dalam tabel pivot.

Representasi JSON
{
  "showTotals": boolean,
  "valueMetadata": [
    {
      object (PivotGroupValueMetadata)
    }
  ],
  "sortOrder": enum (SortOrder),
  "valueBucket": {
    object (PivotGroupSortValueBucket)
  },
  "repeatHeadings": boolean,
  "label": string,
  "groupRule": {
    object (PivotGroupRule)
  },
  "groupLimit": {
    object (PivotGroupLimit)
  },

  // Union field source can be only one of the following:
  "sourceColumnOffset": integer,
  "dataSourceColumnReference": {
    object (DataSourceColumnReference)
  }
  // End of list of possible types for union field source.
}
Kolom
showTotals

boolean

Benar jika tabel pivot harus menyertakan total untuk pengelompokan ini.

valueMetadata[]

object (PivotGroupValueMetadata)

Metadata tentang nilai dalam pengelompokan.

sortOrder

enum (SortOrder)

Urutan nilai dalam grup ini harus diurutkan.

valueBucket

object (PivotGroupSortValueBucket)

Bucket grup pivot yang berlawanan untuk mengurutkannya. Jika tidak ditentukan, pengurutan diurutkan berdasarkan abjad pada nilai grup ini.

repeatHeadings

boolean

Berlaku jika judul dalam grup pivot ini harus diulang. Ini hanya valid untuk pengelompokan baris dan diabaikan oleh kolom.

Secara default, kami meminimalkan pengulangan judul dengan tidak menampilkan judul tingkat lebih tinggi yang sama. Misalnya, meskipun baris ketiga di bawah sesuai dengan "Q1 Mar", "Q1" tidak ditampilkan karena redundan dengan baris sebelumnya. Menetapkan repeatHeading ke benar akan menyebabkan "Q1" diulang untuk "Feb" dan "Mar".

+--------------+
| Q1     | Jan |
|        | Feb |
|        | Mar |
+--------+-----+
| Q1 Total     |
+--------------+
label

string

Label yang akan digunakan untuk grup baris/kolom yang dapat disesuaikan. Misalnya, dalam tabel pivot berikut, label barisnya adalah Region (yang dapat diganti namanya menjadi State) dan label kolomnya adalah Product (yang dapat diganti namanya menjadi Item). Tabel pivot yang dibuat sebelum Desember 2017 tidak memiliki label header. Jika Anda ingin menambahkan label header ke tabel pivot yang ada, hapus tabel pivot yang ada, lalu buat tabel pivot baru dengan parameter yang sama.

+--------------+---------+-------+
| SUM of Units | Product |       |
| Region       | Pen     | Paper |
+--------------+---------+-------+
| New York     |     345 |    98 |
| Oregon       |     234 |   123 |
| Tennessee    |     531 |   415 |
+--------------+---------+-------+
| Grand Total  |    1110 |   636 |
+--------------+---------+-------+
groupRule

object (PivotGroupRule)

Aturan grup yang akan diterapkan ke grup baris/kolom ini.

groupLimit

object (PivotGroupLimit)

Batas jumlah pada baris atau kolom yang akan diterapkan ke grup pivot ini.

Kolom union source. Sumber data grup pivot. source hanya dapat berupa salah satu dari berikut:
sourceColumnOffset

integer

Offset kolom dari rentang sumber yang menjadi dasar pengelompokan ini.

Misalnya, jika sumbernya adalah C10:E15, sourceColumnOffset dari 0 berarti grup ini merujuk ke kolom C, sedangkan offset 1 akan merujuk ke kolom D.

dataSourceColumnReference

object (DataSourceColumnReference)

Referensi pada kolom sumber data yang menjadi dasar pengelompokan ini.

PivotGroupValueMetadata

Metadata tentang nilai dalam pengelompokan pivot.

Representasi JSON
{
  "value": {
    object (ExtendedValue)
  },
  "collapsed": boolean
}
Kolom
value

object (ExtendedValue)

Nilai yang dihitung metadata yang sesuai. (Perhatikan bahwa formulaValue tidak valid, karena nilainya akan dihitung.)

collapsed

boolean

True jika data yang sesuai dengan nilai diciutkan.

PivotGroupGroupValueValue

Informasi tentang nilai dalam grup pivot yang harus digunakan untuk pengurutan.

Representasi JSON
{
  "valuesIndex": integer,
  "buckets": [
    {
      object (ExtendedValue)
    }
  ]
}
Kolom
valuesIndex

integer

Offset dalam daftar PivotTable.values yang menentukan nilai dalam pengelompokan ini.

buckets[]

object (ExtendedValue)

Menentukan bucket tempat nilai dipilih untuk diurutkan.

Misalnya, dalam tabel pivot dengan satu grup baris & dua grup kolom, grup baris dapat mencantumkan hingga dua nilai. Nilai pertama sesuai dengan nilai di grup kolom pertama, dan nilai kedua sesuai dengan nilai di grup kolom kedua. Jika tidak ada nilai yang tercantum, hal ini menunjukkan bahwa baris harus diurutkan menurut "Grand Total" selama grup kolom. Jika satu nilai tercantum, ini sama dengan menggunakan "Total" bucket tersebut.

PivotGroupRule

Setelan opsional di PivotGroup yang menentukan bucket untuk nilai di kolom data sumber, bukan mengelompokkan setiap nilai individu. Hanya satu PivotGroup dengan aturan grup yang dapat ditambahkan untuk setiap kolom dalam data sumber, meskipun pada kolom tertentu Anda dapat menambahkan PivotGroup yang memiliki aturan dan PivotGroup yang tidak memiliki aturan tersebut.

Representasi JSON
{

  // Union field rule can be only one of the following:
  "manualRule": {
    object (ManualRule)
  },
  "histogramRule": {
    object (HistogramRule)
  },
  "dateTimeRule": {
    object (DateTimeRule)
  }
  // End of list of possible types for union field rule.
}
Kolom
Kolom union rule. Aturan yang akan diterapkan pada PivotGroup. rule hanya dapat berupa salah satu dari berikut:
manualRule

object (ManualRule)

ManualRule.

histogramRule

object (HistogramRule)

HistogramRule.

dateTimeRule

object (DateTimeRule)

DateTimeRule.

Aturan Manual

Memungkinkan Anda mengatur nilai di kolom data sumber ke dalam bucket secara manual dengan nama yang Anda pilih. Misalnya, tabel pivot yang menggabungkan populasi berdasarkan negara bagian:

+-------+-------------------+
| State | SUM of Population |
+-------+-------------------+
| AK    |               0.7 |
| AL    |               4.8 |
| AR    |               2.9 |
...
+-------+-------------------+

dapat diubah menjadi tabel pivot yang menggabungkan populasi menurut zona waktu dengan memberikan daftar grup (misalnya, groupName = 'Central', items = ['AL', 'AR', 'IA', ...]) ke aturan grup manual. Perhatikan bahwa efek yang serupa dapat dicapai dengan menambahkan kolom zona waktu ke data sumber dan menyesuaikan tabel pivot.

+-----------+-------------------+
| Time Zone | SUM of Population |
+-----------+-------------------+
| Central   |             106.3 |
| Eastern   |             151.9 |
| Mountain  |              17.4 |
...
+-----------+-------------------+
Representasi JSON
{
  "groups": [
    {
      object (ManualRuleGroup)
    }
  ]
}
Kolom
groups[]

object (ManualRuleGroup)

Daftar nama grup dan item yang sesuai dari data sumber yang dipetakan ke setiap nama grup.

GrupAturanAturan

Nama grup dan daftar item dari data sumber yang harus ditempatkan dalam grup dengan nama ini.

Representasi JSON
{
  "groupName": {
    object (ExtendedValue)
  },
  "items": [
    {
      object (ExtendedValue)
    }
  ]
}
Kolom
groupName

object (ExtendedValue)

Nama grup, yang harus berupa string. Setiap grup dalam ManualRule yang ditentukan harus memiliki nama grup yang unik.

items[]

object (ExtendedValue)

Item dalam data sumber yang harus ditempatkan ke dalam grup ini. Setiap item dapat berupa string, angka, atau boolean. Item dapat muncul di maksimum satu grup dalam ManualRule yang ditentukan. Item yang tidak muncul di grup mana pun akan muncul sendiri.

Aturan Histogram

Memungkinkan Anda mengatur nilai numerik di kolom data sumber ke dalam bucket berukuran konstan. Semua nilai dari HistogramRule.start hingga HistogramRule.end ditempatkan ke dalam grup dengan ukuran HistogramRule.interval. Selain itu, semua nilai di bawah HistogramRule.start ditempatkan di satu grup, dan semua nilai di atas HistogramRule.end ditempatkan di grup lainnya. Hanya HistogramRule.interval yang diperlukan, meskipun jika HistogramRule.start dan HistogramRule.end disediakan, HistogramRule.start harus kurang dari HistogramRule.end. Misalnya, tabel pivot yang menampilkan jumlah pembelian rata-rata menurut usia yang memiliki 50+ baris:

+-----+-------------------+
| Age | AVERAGE of Amount |
+-----+-------------------+
| 16  |            $27.13 |
| 17  |             $5.24 |
| 18  |            $20.15 |
...
+-----+-------------------+

dapat diubah menjadi tabel pivot yang terlihat seperti di bawah ini dengan menerapkan aturan grup histogram dengan HistogramRule.start dari 25, HistogramRule.interval dari 20, dan HistogramRule.end dari 65.

+-------------+-------------------+
| Grouped Age | AVERAGE of Amount |
+-------------+-------------------+
| < 25        |            $19.34 |
| 25-45       |            $31.43 |
| 45-65       |            $35.87 |
| > 65        |            $27.55 |
+-------------+-------------------+
| Grand Total |            $29.12 |
+-------------+-------------------+
Representasi JSON
{
  "interval": number,
  "start": number,
  "end": number
}
Kolom
interval

number

Ukuran bucket yang dibuat. Harus positif.

start

number

Nilai minimum tempat item ditempatkan ke dalam bucket dengan ukuran konstan. Nilai di bawah awal digabungkan ke dalam satu bucket. Kolom ini bersifat opsional.

end

number

Nilai maksimum tempat item ditempatkan ke dalam bucket dengan ukuran konstan. Nilai di atas endpoint digabungkan ke dalam satu bucket. Kolom ini bersifat opsional.

TanggalAturanAturan

Memungkinkan Anda mengatur nilai waktu tanggal di kolom data sumber ke dalam bucket berdasarkan bagian yang dipilih dari nilai tanggal atau waktu. Misalnya, pertimbangkan tabel pivot yang menampilkan transaksi penjualan berdasarkan tanggal:

+----------+--------------+
| Date     | SUM of Sales |
+----------+--------------+
| 1/1/2017 |      $621.14 |
| 2/3/2017 |      $708.84 |
| 5/8/2017 |      $326.84 |
...
+----------+--------------+

Menerapkan aturan grup tanggal dan waktu dengan DateTimeRuleType dari YEAR_MONTH menghasilkan tabel pivot berikut.

+--------------+--------------+
| Grouped Date | SUM of Sales |
+--------------+--------------+
| 2017-Jan     |   $53,731.78 |
| 2017-Feb     |   $83,475.32 |
| 2017-Mar     |   $94,385.05 |
...
+--------------+--------------+
Representasi JSON
{
  "type": enum (DateTimeRuleType)
}
Kolom
type

enum (DateTimeRuleType)

Jenis pengelompokan tanggal dan waktu yang akan diterapkan.

DateTimeRuleType

Jenis aturan pengelompokan tanggal dan waktu yang tersedia. Dokumentasi ini mengasumsikan lokalitas spreadsheet adalah "en-US", meskipun rendering tanggal dan waktu yang sebenarnya menggunakan lokalitas spreadsheet untuk beberapa jenis aturan.

Enumerasi
DATE_TIME_RULE_TYPE_UNSPECIFIED Jangan gunakan jenis default.
SECOND Kelompokkan tanggal menurut detik, dari 0 hingga 59.
MINUTE Kelompokkan tanggal menurut menit, dari 0 hingga 59.
HOUR Kelompokkan tanggal menurut jam menggunakan sistem 24 jam, dari 0 hingga 23.
HOUR_MINUTE Kelompokkan tanggal menurut jam dan menit menggunakan sistem 24 jam, misalnya 19.45.
HOUR_MINUTE_AMPM Kelompokkan tanggal menurut jam dan menit menggunakan sistem 12 jam, misalnya 19.45. Penetapan AM/PM diterjemahkan berdasarkan lokalitas spreadsheet.
DAY_OF_WEEK Kelompokkan tanggal menurut hari, misalnya Minggu. Hari dalam seminggu akan diterjemahkan berdasarkan lokalitas spreadsheet.
DAY_OF_YEAR Kelompokkan tanggal menurut hari, dari 1 hingga 366. Perhatikan bahwa tanggal setelah 29 Februari jatuh di bucket yang berbeda pada tahun kabisat dibandingkan tahun non-kabisat.
DAY_OF_MONTH Kelompokkan tanggal menurut hari, dari 1 hingga 31.
DAY_MONTH Kelompokkan tanggal menurut hari dan bulan, misalnya 22-Nov. Bulan diterjemahkan berdasarkan lokal spreadsheet.
MONTH Kelompokkan tanggal menurut bulan, misalnya November. Bulan diterjemahkan berdasarkan lokal spreadsheet.
QUARTER Kelompokkan tanggal menurut kuartal, misalnya Q1 (yang mewakili Jan-Mar).
YEAR Kelompokkan tanggal menurut tahun, misalnya 2008.
YEAR_MONTH Kelompokkan tanggal menurut tahun dan bulan, misalnya 2008 - Nov. Bulan diterjemahkan berdasarkan lokal spreadsheet.
YEAR_QUARTER Kelompokkan tanggal menurut tahun dan kuartal, misalnya Kuartal 4 2008.
YEAR_MONTH_DAY Kelompokkan tanggal menurut tahun, bulan, dan hari, misalnya 2008-11-22.

PivotGroupLimit

Batas jumlah pada baris atau kolom di grup pivot.

Representasi JSON
{
  "countLimit": integer,
  "applyOrder": integer
}
Kolom
countLimit

integer

Batas jumlah.

applyOrder

integer

Urutan batas grup diterapkan ke tabel pivot.

Batas grup pivot diterapkan dari nomor pesanan yang lebih rendah ke yang lebih tinggi. Nomor pesanan dinormalkan ke bilangan bulat berurutan dari 0.

Untuk permintaan tulis, agar sepenuhnya menyesuaikan urutan penerapan, semua batas grup pivot harus memiliki kolom ini yang ditetapkan dengan nomor unik. Jika tidak, urutan ditentukan oleh indeks dalam daftar PivotTable.rows, lalu daftar PivotTable.columns.

PivotFilterCriteria

Kriteria untuk menampilkan/menyembunyikan baris dalam tabel pivot.

Representasi JSON
{
  "visibleValues": [
    string
  ],
  "condition": {
    object (BooleanCondition)
  },
  "visibleByDefault": boolean
}
Kolom
visibleValues[]

string

Nilai yang harus disertakan. Nilai yang tidak tercantum di sini dikecualikan.

condition

object (BooleanCondition)

Kondisi yang harus bernilai benar agar nilai dapat ditampilkan. ( visibleValues tidak mengganti nilai ini -- meskipun nilai tercantum di sana, nilai tersebut tetap disembunyikan jika tidak memenuhi kondisi.)

Nilai kondisi yang merujuk ke rentang dalam notasi A1 dievaluasi sesuai dengan sheet tabel pivot. Referensi diperlakukan mutlak, sehingga tidak diisi pada tabel pivot. Misalnya, nilai kondisi =A1 pada "Pivot Table 1" diperlakukan sebagai 'Pivot Table 1'!$A$1.

Data sumber tabel pivot dapat dirujuk oleh nama header kolom. Misalnya, jika data sumber memiliki kolom bernama "Pendapatan" dan "Biaya" dan kondisi diterapkan ke kolom "Pendapatan" dengan jenis NUMBER_GREATER dan nilai =Cost, hanya kolom yang menyertakan "Pendapatan" > "Biaya".

visibleByDefault

boolean

Apakah nilai terlihat secara default. Jika true (benar), visibleValues akan diabaikan, semua nilai yang memenuhi condition (jika ditentukan) akan ditampilkan. Jika salah, nilai yang ada di visibleValues dan yang memenuhi condition akan ditampilkan.

PivotFilterSpec

Kriteria filter tabel pivot yang terkait dengan offset kolom sumber tertentu.

Representasi JSON
{
  "filterCriteria": {
    object (PivotFilterCriteria)
  },

  // Union field source can be only one of the following:
  "columnOffsetIndex": integer,
  "dataSourceColumnReference": {
    object (DataSourceColumnReference)
  }
  // End of list of possible types for union field source.
}
Kolom
filterCriteria

object (PivotFilterCriteria)

Kriteria untuk kolom.

Kolom union source. Kolom sumber tempat filter ini diterapkan. source hanya dapat berupa salah satu dari berikut:
columnOffsetIndex

integer

Offset kolom berbasis nol dari rentang sumber.

dataSourceColumnReference

object (DataSourceColumnReference)

Referensi ke kolom sumber data.

PivotValue

Definisi cara penghitungan nilai dalam tabel pivot.

Representasi JSON
{
  "summarizeFunction": enum (PivotValueSummarizeFunction),
  "name": string,
  "calculatedDisplayType": enum (PivotValueCalculatedDisplayType),

  // Union field value can be only one of the following:
  "sourceColumnOffset": integer,
  "formula": string,
  "dataSourceColumnReference": {
    object (DataSourceColumnReference)
  }
  // End of list of possible types for union field value.
}
Kolom
summarizeFunction

enum (PivotValueSummarizeFunction)

Fungsi untuk meringkas nilai. Jika formula ditetapkan, satu-satunya nilai yang didukung adalah SUM dan CUSTOM. Jika sourceColumnOffset ditetapkan, CUSTOM tidak akan didukung.

name

string

Nama yang akan digunakan untuk nilai.

calculatedDisplayType

enum (PivotValueCalculatedDisplayType)

Jika ditentukan, menunjukkan bahwa nilai pivot harus ditampilkan sebagai hasil penghitungan dengan nilai pivot lainnya. Misalnya, jika calculateDisplayType ditetapkan sebagai PERCENT_OF_GRAND_TOTAL, semua nilai pivot akan ditampilkan sebagai persentase total keseluruhan. Di editor Spreadsheet, ini disebut sebagai “Tampilkan Sebagai” di bagian nilai tabel pivot.

Kolom union value. Data yang akan digunakan untuk nilai dalam tabel pivot. Hanya satu nilai yang harus ditetapkan. value hanya dapat berupa salah satu dari berikut:
sourceColumnOffset

integer

Offset kolom dari rentang sumber yang dibaca nilai ini.

Misalnya, jika sumbernya adalah C10:E15, sourceColumnOffset dari 0 berarti nilai ini merujuk ke kolom C, sedangkan offset 1 akan merujuk ke kolom D.

formula

string

Formula kustom untuk menghitung nilai. Formula harus diawali dengan karakter =.

dataSourceColumnReference

object (DataSourceColumnReference)

Referensi ke kolom sumber data yang nilai ini dibaca.

PivotValueSummarizeFunction

Fungsi untuk meringkas nilai pivot.

Enumerasi
PIVOT_STANDARD_VALUE_FUNCTION_UNSPECIFIED Defaultnya, jangan gunakan.
SUM Sesuai dengan fungsi SUM.
COUNTA Sesuai dengan fungsi COUNTA.
COUNT Sesuai dengan fungsi COUNT.
COUNTUNIQUE Sesuai dengan fungsi COUNTUNIQUE.
AVERAGE Sesuai dengan fungsi AVERAGE.
MAX Sesuai dengan fungsi MAX.
MIN Sesuai dengan fungsi MIN.
MEDIAN Sesuai dengan fungsi MEDIAN.
PRODUCT Sesuai dengan fungsi PRODUCT.
STDEV Sesuai dengan fungsi STDEV.
STDEVP Sesuai dengan fungsi STDEVP.
VAR Sesuai dengan fungsi VAR.
VARP Sesuai dengan fungsi VARP.
CUSTOM Mengindikasikan bahwa formula harus digunakan apa adanya. Hanya valid jika PivotValue.formula ditetapkan.

PivotValueCalculatedDisplayType

Kemungkinan cara nilai pivot dihitung untuk tampilan.

Enumerasi
PIVOT_VALUE_CALCULATED_DISPLAY_TYPE_UNSPECIFIED Nilai default, jangan gunakan.
PERCENT_OF_ROW_TOTAL Menampilkan nilai pivot sebagai persentase nilai total baris.
PERCENT_OF_COLUMN_TOTAL Menampilkan nilai pivot sebagai persentase dari nilai total kolom.
PERCENT_OF_GRAND_TOTAL Menampilkan nilai pivot sebagai persentase dari nilai total keseluruhan.

PivotValueLayout

Tata letak nilai pivot.

Enumerasi
HORIZONTAL Nilai ditata secara horizontal (sebagai kolom).
VERTICAL Nilai ditata secara vertikal (sebagai baris).