- Вы хотите установить
Treat labels as text
диаграммы в электронной таблице Google. - Вы хотите добиться этого с помощью API Sheets.
Если мое понимание верно как насчет этого ответа? Пожалуйста, подумайте об этом как об одном из нескольких возможных ответов.
Проблема и обходной путь:
К сожалению, я не смог найти свойство для установки Treat labels as text
в теле запроса. И я готовлю 2 паттерна проверенного Treat labels as text
и непроверенного Treat labels as text
, и когда оба паттерна сравниваются с объектом диаграммы, полученным с помощью метода spreadsheets.get, я не могу найти различий для обоих. Таким образом, я подумал, что на текущем этапе нет способа установить Treat labels as text
в Sheets API.
Так что в качестве одного из нескольких обходных путей здесь я хотел бы предложить использовать веб-приложения в качестве API. Когда используется Google Apps Script, можно установить Treat labels as text
. Этот обходной путь использует это.
Использование:
Использование этого обходного пути следующее.
1. Создайте новый проект скрипта Google Apps.
Пример скрипта веб-приложений - это скрипт Google Apps. Поэтому, пожалуйста, создайте проект Google Apps Script.
Если вы хотите создать его напрямую, перейдите к https://script.new/. В этом случае, если вы не вошли в Google, откроется экран входа. Пожалуйста, войдите в Google. При этом открывается редактор сценариев Google Apps Script.
2. Скопируйте и вставьте скрипт.
Пожалуйста, скопируйте и вставьте следующий скрипт.
function doGet(e) {
var spreadsheetId = e.parameter.spreadsheetId;
var chartId = e.parameter.chartId;
var treatLabelsAsText = e.parameter.treatLabelsAsText;
var ss = SpreadsheetApp.openById(spreadsheetId);
var sheets = ss.getSheets();
var done = false;
for (var i = 0; i < sheets.length; i++) {
var charts = sheets[i].getCharts();
if (charts.length > 0) {
for (var j = 0; j < charts.length; j++) {
if (charts[j].getChartId() == chartId) {
var modifiedChart = charts[j].modify().setOption('treatLabelsAsText', treatLabelsAsText).build();
sheets[i].updateChart(modifiedChart);
done = true;
break;
}
}
if (done) break;
}
}
return ContentService.createTextOutput("Done.");
}
3. Развертывание веб-приложений.
- В редакторе сценариев откройте диалоговое окно с помощью «Publi sh» -> «Развернуть как веб-приложение».
- Выберите «Я « для » Запустите приложение как: «.
- Выберите « Любой, даже анонимный » для « У кого есть доступ к приложению: «.
- Этот параметр предназначен для тестирования этого обходного пути.
- Если для параметра «Только я» установлено значение «У кого есть доступ к приложению:», необходимо использовать маркер доступа.
- Нажмите кнопку «Развернуть» как новую «Версия проекта».
- Автоматически откройте диалоговое окно «Требуется авторизация».
- Нажмите «Просмотреть разрешения».
- Выберите собственную учетную запись.
- Нажмите «Дополнительно» в разделе «Это приложение не подтверждено».
- Нажмите " Go to ### имя проекта ### (небезопасно) "
- Нажмите кнопку" Разрешить ".
- Нажмите" ОК ".
- Скопируйте URL-адрес веб-приложений. Это как
https://script.google.com/macros/s/###/exec
. - Когда вы изменили скрипт Google Apps, пожалуйста, повторно разверните его как новую версию. Этим измененный сценарий отражается в веб-приложениях. Пожалуйста, будьте внимательны.
4. Пример curl.
Чтобы проверить доступ к веб-приложениям, используйте следующую команду curl.
curl -GL \
-d "spreadsheetId=###" \
-d "chartId=###" \
-d "treatLabelsAsText=true" \
"https://script.google.com/macros/s/###/exec"
Если вы развернули веб-приложения как «Только я» для «У кого есть Доступ к приложению: ", пожалуйста, используйте свой токен доступа следующим образом.
curl -GL \
-H "Authorization: Bearer ###" \
-d "spreadsheetId=###" \
-d "chartId=###" \
-d "treatLabelsAsText=true" \
"https://script.google.com/macros/s/###/exec"
- Пожалуйста, установите URL-адрес веб-приложений, полученный выше, а также идентификатор электронной таблицы, идентификатор диаграммы и значение
treatLabelsAsText
. - При выполнении вышеуказанной команды curl проверяется «Обрабатывать метки как текст» для определенной диаграммы c в электронной таблице. И вы можете увидеть
Done.
на консоли.
Примечание:
Ссылки:
Если я неправильно понял ваш вопрос, и это не то направление, которое вам нужно, я приношу свои извинения.