Создайте гистограмму с помощью pygsheets add_chart () - PullRequest
0 голосов
/ 04 мая 2020

Я пытаюсь создать диаграмму гистограммы, используя функцию pygsheets .add_chart(). Для этого я хочу передать только аргумент domain, поскольку мне нужен только один столбец данных для гистограммы. Однако, когда я пропускаю аргумент range, например:

output_ws.add_chart(domain=('A1', 'A17'), ranges=None, title='Histogram Chart')

, я получаю следующую ошибку:

Traceback (most recent call last):
  File "cloud_functions/sheets_functions/main.py", line 327, in <module>
    get_field_growth_stage_sheet()
  File "cloud_functions/sheets_functions/main.py", line 321, in get_field_growth_stage_sheet
    output_ws.add_chart(domain=('A1', 'A17'), ranges=None, title='Histogram Chart')
  File "/usr/local/lib/python3.7/site-packages/pygsheets/worksheet.py", line 1518, in add_chart
    return Chart(self, domain, ranges, chart_type, title, anchor_cell)
  File "/usr/local/lib/python3.7/site-packages/pygsheets/chart.py", line 36, in __init__
    self._create_chart()
  File "/usr/local/lib/python3.7/site-packages/pygsheets/chart.py", line 282, in _create_chart
    response = self._worksheet.client.sheet.batch_update(self._worksheet.spreadsheet.id, request)
  File "/usr/local/lib/python3.7/site-packages/pygsheets/sheet.py", line 101, in batch_update
    return self._execute_requests(request)
  File "/usr/local/lib/python3.7/site-packages/pygsheets/sheet.py", line 359, in _execute_requests
    response = request.execute(num_retries=self.retries)
  File "/usr/local/lib/python3.7/site-packages/googleapiclient/_helpers.py", line 134, in positional_wrapper
    return wrapped(*args, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/googleapiclient/http.py", line 898, in execute
    raise HttpError(resp, content, uri=self.uri)
googleapiclient.errors.HttpError: <HttpError 500 when requesting https://sheets.googleapis.com/v4/spreadsheets/1xvTqpxGN7voIAEv03fXAlY85EUsY0yehMdiP__3QnOg:batchUpdate?fields=%2A&alt=json returned "Internal error encountered.">

1 Ответ

0 голосов
/ 09 мая 2020

Если вам нужен один столбец данных, то вам нужен один диапазон и пустой домен. Так как диапазон - это то, что указываете данные.

установите таблицы с разбивкой

pip install --no-cache-dir https://github.com/nithinmurali/pygsheets/archive/staging.zip

и попробуйте это:

output_ws.add_chart(domain=None, ranges=[('A1', 'A17')], title='Histogram Chart')
...