Altair library | Difficulty to save a Chart in .png

Viewed 1203

I'm trying to save an Altair Chart in .png howether I get the error below. Could you please help me, I don't know what I'm doing wrong.

For information I manage to save the graph in .html and .json format, but nether .png, .jpeg, .svg aren't working. I already tried to insall altair_saver that returns me Requirement already satisfied.

Thank you for your help.

>>> plot.save('src/modality.png')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/app/installer/envPySpark/lib/python3.6/site-packages/altair/vegalite/v4/api.py", line 476, in save
    result = save(**kwds)
  File "/app/installer/envPySpark/lib/python3.6/site-packages/altair/utils/save.py", line 121, in save
    **kwargs,
  File "/app/installer/envPySpark/lib/python3.6/site-packages/altair/utils/mimebundle.py", line 60, in spec_to_mimebundle
    return altair_saver.render(spec, format, mode=mode, **kwargs)
  File "/app/installer/envPySpark/lib/python3.6/site-packages/altair_saver/_core.py", line 255, in render
    Saver = _select_saver(method, mode=mode, fmt=fmt)
  File "/app/installer/envPySpark/lib/python3.6/site-packages/altair_saver/_core.py", line 69, in _select_saver
    raise ValueError(f"No enabled saver found that supports format={fmt!r}")
ValueError: No enabled saver found that supports format='png'

Update

After running this command line with my conda env

$ conda install -c conda-forge altair_saver

A new error appear :

>>> plot.save('src/modality.png')
TypeError: Cannot read property 'getContext' of null
    at resize (/export/home/cgilles/.user_conda/miniconda/envs/metrologie/lib/vega-cli/node_modules/vega-scenegraph/build/vega-scenegraph.js:3377:26)
    at CanvasRenderer.prototype$6.resize (/export/home/cgilles/.user_conda/miniconda/envs/metrologie/lib/vega-cli/node_modules/vega-scenegraph/build/vega-scenegraph.js:3427:5)
    at CanvasRenderer.prototype$4.initialize (/export/home/cgilles/.user_conda/miniconda/envs/metrologie/lib/vega-cli/node_modules/vega-scenegraph/build/vega-scenegraph.js:2989:17)
    at CanvasRenderer.prototype$6.initialize (/export/home/cgilles/.user_conda/miniconda/envs/metrologie/lib/vega-cli/node_modules/vega-scenegraph/build/vega-scenegraph.js:3422:28)
    at initializeRenderer (/export/home/cgilles/.user_conda/miniconda/envs/metrologie/lib/vega-cli/node_modules/vega-view/build/vega-view.js:630:8)
    at renderHeadless (/export/home/cgilles/.user_conda/miniconda/envs/metrologie/lib/vega-cli/node_modules/vega-view/build/vega-view.js:736:12)
    at processTicksAndRejections (internal/process/task_queues.js:93:5)
    at async View.renderToCanvas [as toCanvas] (/export/home/cgilles/.user_conda/miniconda/envs/metrologie/lib/vega-cli/node_modules/vega-view/build/vega-view.js:771:15)
1 Answers
Related