Class SheetsChart

SheetsChart

A PageElement representing a linked chart embedded from Google Sheets.

Methods

MethodReturn typeBrief description
alignOnPage(alignmentPosition)SheetsChartAligns the element to the specified alignment position on the page.
asImage()ImageReturns the chart as an image or null if the chart is not an embedded image.
bringForward()SheetsChartBrings the page element forward on the page by one element.
bringToFront()SheetsChartBrings the page element to the front of the page.
duplicate()PageElementDuplicates the page element.
getChartId()IntegerGets the ID of the specific chart in the Google Sheets spreadsheet that is embedded.
getConnectionSites()ConnectionSite[]Returns the list of ConnectionSites on the page element, or an empty list if the page element does not have any connection sites.
getDescription()StringReturns the page element's alt text description.
getEmbedType()SheetsChartEmbedTypeReturns the embed type of the Sheets chart.
getHeight()NumberGets the element's height in points, which is the height of the element's bounding box when the element has no rotation.
getInherentHeight()NumberReturns the element's inherent height in points.
getInherentWidth()NumberReturns the element's inherent width in points.
getLeft()NumberReturns the element's horizontal position in points, measured from the upper-left corner of the page when the element has no rotation.
getLink()LinkReturns the Link or null if there is no link.
getObjectId()StringReturns the unique ID for this object.
getPageElementType()PageElementTypeReturns the page element's type, represented as a PageElementType enum.
getParentGroup()GroupReturns the group this page element belongs to, or null if the element is not in a group.
getParentPage()PageReturns the page this page element is on.
getRotation()NumberReturns the element's clockwise rotation angle around its center in degrees, where zero degrees means no rotation.
getSpreadsheetId()StringGets the ID of the Google Sheets spreadsheet that contains the source chart.
getTitle()StringReturns the page element's alt text title.
getTop()NumberGets the element's vertical position in points, measured from the upper-left corner of the page when the element has no rotation.
getTransform()AffineTransformReturns the page element's transform.
getWidth()NumberReturns the element's width in points, which is the width of the element's bounding box when the element has no rotation.
preconcatenateTransform(transform)SheetsChartPreconcatenates the provided transform to the existing transform of the page element.
refresh()voidRefreshes the chart by replacing it with the latest version of the chart from Google Sheets.
remove()voidRemoves the page element.
removeLink()voidRemoves a Link.
scaleHeight(ratio)SheetsChartScales the element's height by the specified ratio.
scaleWidth(ratio)SheetsChartScales the element's width by the specified ratio.
select()voidSelects only the PageElement in the active presentation and removes any previous selection.
select(replace)voidSelects the PageElement in the active presentation.
sendBackward()SheetsChartSends the page element backward on the page by one element.
sendToBack()SheetsChartSends the page element to the back of the page.
setDescription(description)SheetsChartSets the page element's alt text description.
setHeight(height)SheetsChartSets the element's height in points, which is the height of the element's bounding box when the element has no rotation.
setLeft(left)SheetsChartSets the element's horizontal position in points, measured from the upper-left corner of the page when the element has no rotation.
setLinkSlide(slideIndex)LinkSets a Link to the given Slide using the zero-based index of the slide.
setLinkSlide(slide)LinkSets a Link to the given Slide, the link is set by the given slide ID.
setLinkSlide(slidePosition)LinkSets a Link to the given Slide using the relative position of the slide.
setLinkUrl(url)LinkSets a Link to the given non-empty URL string.
setRotation(angle)SheetsChartSets the element's clockwise rotation angle around its center in degrees.
setTitle(title)SheetsChartSets the page element's alt text title.
setTop(top)SheetsChartSets the element's vertical position in points, measured from the upper-left corner of the page when the element has no rotation.
setTransform(transform)SheetsChartSets the transform of the page element with the provided transform.
setWidth(width)SheetsChartSets the element's width in points, which is the width of the element's bounding box when the element has no rotation.

Detailed documentation

alignOnPage(alignmentPosition)

Aligns the element to the specified alignment position on the page.

Parameters

NameTypeDescription
alignmentPositionAlignmentPositionThe position to align this page element to on the page.

Return

SheetsChart — This page element, for chaining.


asImage()

Returns the chart as an image or null if the chart is not an embedded image.

Return

Image — This chart as an image, or null if the chart is not an embedded image.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

bringForward()

Brings the page element forward on the page by one element.

The page element must not be in a group.

Return

SheetsChart — This page element, for chaining.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

bringToFront()

Brings the page element to the front of the page.

The page element must not be in a group.

Return

SheetsChart — This page element, for chaining.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

duplicate()

Duplicates the page element.

The duplicate page element is placed on the same page at the same position as the original.

Return

PageElement — The new duplicate of this page element.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

getChartId()

Gets the ID of the specific chart in the Google Sheets spreadsheet that is embedded.

Return

Integer — The ID of the embedded chart.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

getConnectionSites()

Returns the list of ConnectionSites on the page element, or an empty list if the page element does not have any connection sites.

Return

ConnectionSite[] — The connection sites list, which may be empty if this element has no connection sites.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

getDescription()

Returns the page element's alt text description. The description is combined with the title to display and read alt text.

Return

String — The page element's alt text description.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

getEmbedType()

Returns the embed type of the Sheets chart.

Return

SheetsChartEmbedType — The embed type of this chart.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

getHeight()

Gets the element's height in points, which is the height of the element's bounding box when the element has no rotation.

This method isn't compatible with all page elements. To learn which page elements aren't compatible with this method, refer to the sizing and positioning limitations.

Return

Number — The page element's inherent height in points, or null if the page element does not have a height.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

getInherentHeight()

Returns the element's inherent height in points.

The page element's transform is relative to its inherent size. Use the inherent size in conjunction with the element's transform to determine the element's final visual appearance.

Return

Number — The page element's inherent height in points, or null if the page element does not have a height.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

getInherentWidth()

Returns the element's inherent width in points.

The page element's transform is relative to its inherent size. Use the inherent size in conjunction with the element's transform to determine the element's final visual appearance.

Return

Number — The page element's inherent width in points, or null if the page element does not have a width.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

getLeft()

Returns the element's horizontal position in points, measured from the upper-left corner of the page when the element has no rotation.

Return

Number — This element's horizontal position in points, from the upper-left corner of the page.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

Returns the Link or null if there is no link.

var link = shape.getLink();
if (link != null) {
  Logger.log('Shape has a link of type: ' + link.getLinkType());
}

Return

Link

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

getObjectId()

Returns the unique ID for this object. Object IDs used by pages and page elements share the same namespace.

Return

String — The unique ID for this object.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

getPageElementType()

Returns the page element's type, represented as a PageElementType enum.

Return

PageElementType — The page element's type.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

getParentGroup()

Returns the group this page element belongs to, or null if the element is not in a group.

Return

Group — The group this page element belongs to, or null.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

getParentPage()

Returns the page this page element is on.

Return

Page — The page this element resides on.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

getRotation()

Returns the element's clockwise rotation angle around its center in degrees, where zero degrees means no rotation.

Return

Number — The rotation angle in degrees between 0 (inclusive) and 360 (exclusive).

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

getSpreadsheetId()

Gets the ID of the Google Sheets spreadsheet that contains the source chart.

Return

String — The ID of the spreadsheet that contains the source chart.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

getTitle()

Returns the page element's alt text title. The title is combined with the description to display and read alt text.

Return

String — The page element's alt text title.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

getTop()

Gets the element's vertical position in points, measured from the upper-left corner of the page when the element has no rotation.

Return

Number — This element's vertical position in points, from the upper-left corner of the page.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

getTransform()

Returns the page element's transform.

The visual appearance of the page element is determined by its absolute transform. To compute the absolute transform, preconcatenate a page element's transform with the transforms of all of its parent groups. If the page element is not in a group, its absolute transform is the same as the value in this field.

Return

AffineTransform — The page element's transform.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

getWidth()

Returns the element's width in points, which is the width of the element's bounding box when the element has no rotation.

This method isn't compatible with all page elements. To learn which page elements aren't compatible with this method, refer to the sizing and positioning limitations.

Return

Number — The page element's inherent width in points, or null if the page element does not have a width.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

preconcatenateTransform(transform)

Preconcatenates the provided transform to the existing transform of the page element.

newTransform = argument * existingTransform

For example, to move a page elements 36 points to the left:

element.preconcatenateTransform(SlidesApp.newAffineTransformBuilder()
    .setTranslateX(-36.0)
    .build());

You can also replace the page element's transform with setTransform(transform).

Parameters

NameTypeDescription
transformAffineTransformThe transform to preconcatenate onto this page element's transform.

Return

SheetsChart — This page element, for chaining.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

refresh()

Refreshes the chart by replacing it with the latest version of the chart from Google Sheets. If the chart is already up to date, does not make any change to the chart in the presentation.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/spreadsheets.readonly

remove()

Removes the page element.

If after a remove operation, a Group contains only one or no page elements, the group itself is also removed.

If a placeholder PageElement is removed on a master or layout, any empty inheriting placeholders are also removed.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

Removes a Link.

shape.removeLink();

scaleHeight(ratio)

Scales the element's height by the specified ratio. The element's height is the height of its bounding box when the element has no rotation.

This method isn't compatible with all page elements. To learn which page elements aren't compatible with this method, refer to the sizing and positioning limitations.

Parameters

NameTypeDescription
ratioNumberThe ratio to scale this page element's height by.

Return

SheetsChart — This page element, for chaining.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

scaleWidth(ratio)

Scales the element's width by the specified ratio. The element's width is the width of its bounding box when the element has no rotation.

This method isn't compatible with all page elements. To learn which page elements aren't compatible with this method, refer to the sizing and positioning limitations.

Parameters

NameTypeDescription
ratioNumberThe ratio to scale this page element's width by.

Return

SheetsChart — This page element, for chaining.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

select()

Selects only the PageElement in the active presentation and removes any previous selection. This is the same as calling select(replace) with true.

A script can only access the selection of the user who is running the script, and only if the script is bound to the presentation.

This sets the parent Page of the PageElement as the current page selection.

var slide = SlidesApp.getActivePresentation().getSlides()[0];
var pageElement = slide.getPageElements()[0];
// Only select this page element and replace any previous selection.
pageElement.select();

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

select(replace)

Selects the PageElement in the active presentation.

A script can only access the selection of the user who is running the script, and only if the script is bound to the presentation.

Pass true to this method to select only the PageElement and remove any previous selection. This also sets the parent Page of the PageElement as the current page selection.

Pass false to select multiple PageElement objects. The PageElement objects must be in the same Page.

The following conditions must be met while selecting a page element using a false parameter:

  1. The parent Page of the PageElement object must be the current page selection.
  2. There should not be multiple Page objects selected.

To make sure that’s the case the preferred approach is to select the parent Page first using Page.selectAsCurrentPage() and then select the page elements in that page.

var slide = SlidesApp.getActivePresentation().getSlides()[0];
// First select the slide page, as the current page selection.
slide.selectAsCurrentPage();
// Then select all the page elements in the selected slide page.
var pageElements = slide.getPageElements();
for (var i = 0; i < pageElements.length; i++) {
  pageElements[i].select(false);
}

Parameters

NameTypeDescription
replaceBooleanIf true, the selection replaces any previous selection; otherwise the selection is added to any previous selection.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

sendBackward()

Sends the page element backward on the page by one element.

The page element must not be in a group.

Return

SheetsChart — This page element, for chaining.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

sendToBack()

Sends the page element to the back of the page.

The page element must not be in a group.

Return

SheetsChart — This page element, for chaining.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

setDescription(description)

Sets the page element's alt text description.

The method is not supported for Group elements.

// Set the first page element's alt text description to "new alt text description".
var pageElement = SlidesApp.getActivePresentation().getSlides()[0].getPageElements()[0];
pageElement.setDescription('new alt text description');
Logger.log(pageElement.getDescription());

Parameters

NameTypeDescription
descriptionStringThe string to set the alt text description to.

Return

SheetsChart — This page element.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

setHeight(height)

Sets the element's height in points, which is the height of the element's bounding box when the element has no rotation.

This method isn't compatible with all page elements. To learn which page elements aren't compatible with this method, refer to the sizing and positioning limitations.

Parameters

NameTypeDescription
heightNumberThe new height of this page element to set, in points.

Return

SheetsChart — This page element, for chaining.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

setLeft(left)

Sets the element's horizontal position in points, measured from the upper-left corner of the page when the element has no rotation.

Parameters

NameTypeDescription
leftNumberThe new horizontal position to set, in points.

Return

SheetsChart — This page element, for chaining.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

setLinkSlide(slideIndex)

Sets a Link to the given Slide using the zero-based index of the slide.

// Set a link to the first slide of the presentation.
shape.setLinkSlide(0);

Parameters

NameTypeDescription
slideIndexIntegerThe zero-based index to the slide.

Return

Link — the Link that was set

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

setLinkSlide(slide)

Sets a Link to the given Slide, the link is set by the given slide ID.

// Set a link to the first slide of the presentation.
var slide = presentation.getSlides()[0];
shape.setLinkSlide(slide);

Parameters

NameTypeDescription
slideSlideThe Slide to be linked.

Return

Link — the Link that was set

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

setLinkSlide(slidePosition)

Sets a Link to the given Slide using the relative position of the slide.

// Set a link to the first slide of the presentation.
shape.setLinkSlide(SlideApp.SlidePosition.FIRST_SLIDE);

Parameters

NameTypeDescription
slidePositionSlidePositionThe relative SlidePosition.

Return

Link — the Link that was set

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

setLinkUrl(url)

Sets a Link to the given non-empty URL string.

// Set a link to the URL.
shape.setLinkUrl("https://slides.google.com");

Parameters

NameTypeDescription
urlStringThe URL string.

Return

Link — the Link that was set

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

setRotation(angle)

Sets the element's clockwise rotation angle around its center in degrees.

This method isn't compatible with all page elements. To learn which page elements aren't compatible with this method, refer to the sizing and positioning limitations.

Parameters

NameTypeDescription
angleNumberThe new clockwise rotation angle to set, in degrees.

Return

SheetsChart — This page element, for chaining.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

setTitle(title)

Sets the page element's alt text title.

The method is not supported for Group elements.

// Set the first page element's alt text title to "new alt text title".
var pageElement = SlidesApp.getActivePresentation().getSlides()[0].getPageElements()[0];
pageElement.setTitle('new alt text title');
Logger.log(pageElement.getTitle());

Parameters

NameTypeDescription
titleStringThe string to set the alt text title to.

Return

SheetsChart — This page element.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

setTop(top)

Sets the element's vertical position in points, measured from the upper-left corner of the page when the element has no rotation.

Parameters

NameTypeDescription
topNumberThe new vertical position to set, in points.

Return

SheetsChart — This page element, for chaining.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

setTransform(transform)

Sets the transform of the page element with the provided transform.

Updating the transform of a group changes the absolute transform of the page elements in that group, which can change their visual appearance.

Updating the transform of a page element that is in a group only changes the transform of that page element; it doesn't affect the transforms of the group or other page elements in the group.

For details on how transforms impact the visual appearance of page elements, see getTransform().

Parameters

NameTypeDescription
transformAffineTransformThe transform that is set for this page element.

Return

SheetsChart — This element, for chaining.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations

setWidth(width)

Sets the element's width in points, which is the width of the element's bounding box when the element has no rotation.

This method isn't compatible with all page elements. To learn which page elements aren't compatible with this method, refer to the sizing and positioning limitations.

Parameters

NameTypeDescription
widthNumberThe new width of this page element to set, in points.

Return

SheetsChart — This page element, for chaining.

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/presentations.currentonly
  • https://www.googleapis.com/auth/presentations