Skip to content
This repository has been archived by the owner on Apr 9, 2024. It is now read-only.

Trying to save Altair chart fails due to "NoMatchingVersions" error #59

Closed
kkalle opened this issue Aug 17, 2023 · 5 comments
Closed

Trying to save Altair chart fails due to "NoMatchingVersions" error #59

kkalle opened this issue Aug 17, 2023 · 5 comments

Comments

@kkalle
Copy link

kkalle commented Aug 17, 2023

This simple code crashes: save(chart_with_labels, "chart.png")

With this error:
NoMatchingVersions: No matches for version='5.8.0' among ['4.0.2', '4.8.1', '4.17.0']. Often this can be fixed by updating altair_viewer: pip install -U altair_viewer

Trying to update altair_viewer doesn't help. What's wrong?

@kkalle kkalle changed the title Trying to save Altair chart fails due to "NoMatchingVersions" errir Trying to save Altair chart fails due to "NoMatchingVersions" error Aug 17, 2023
@cross85
Copy link

cross85 commented Aug 26, 2023

I have tha same problem when using .show()

@jonas-zengo
Copy link

jonas-zengo commented Oct 1, 2023

Same problem here:

NoMatchingVersions: No matches for version='5.14.1' among ['4.0.2', '4.8.1', '4.17.0'].
Often this can be fixed by updating altair_viewer:
    pip install -U altair_viewer

@donaldbraman
Copy link

donaldbraman commented Nov 20, 2023

I have the same problem. Here is some code for reproduction:

import pandas as pd
import altair as alt

historical_data = 'https://nida.nih.gov/sites/default/files/Overdose_data_1999-2021%201.19.23.xlsx'
worksheet = "Number Drug OD Deaths"

historical = pd.read_excel(
    historical_data,
    sheet_name = worksheet,
    skiprows=6,
    header=0,
    index_col=1,
    )

historical.columns = [str(x) for x in range(1998,2023)]
historical = historical[[str(x) for x in range(1999,2022)]].copy()
historical = historical.iloc[3].copy()
historical=historical.reset_index().copy()
historical.columns = ['Year','Opiod Fatalities']
historical.Year = [str(x) for x in historical.Year]

chart = alt.Chart(historical).mark_bar().encode(
    x=alt.X('Year',axis=alt.Axis(titleFontSize=16)),
    y=alt.Y('Opiod Fatalities', axis=alt.Axis(titleFontSize=16)),
).properties(
    title=alt.TitleParams(
        text='Lethality at Scale: Opioid Fatalities',
        fontSize=20
    )
)

chart.save('opioid_fatalties.png', format = 'png')

Like others, I have updated altair-viewer to no avail. Here is my error message:

---------------------------------------------------------------------------
NoMatchingVersions                        Traceback (most recent call last)
[/workspaces/pbc-graphing/notebooks/opioids.ipynb](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/opioids.ipynb) Cell 6 line 3
     [24](vscode-notebook-cell://codespaces%2Bdidactic-space-engine-65774w5xrjh4q79/workspaces/pbc-graphing/notebooks/opioids.ipynb#X10sdnNjb2RlLXJlbW90ZQ%3D%3D?line=23) historical.Year = [str(x) for x in historical.Year]
     [26](vscode-notebook-cell://codespaces%2Bdidactic-space-engine-65774w5xrjh4q79/workspaces/pbc-graphing/notebooks/opioids.ipynb#X10sdnNjb2RlLXJlbW90ZQ%3D%3D?line=25) chart = alt.Chart(historical).mark_bar().encode(
     [27](vscode-notebook-cell://codespaces%2Bdidactic-space-engine-65774w5xrjh4q79/workspaces/pbc-graphing/notebooks/opioids.ipynb#X10sdnNjb2RlLXJlbW90ZQ%3D%3D?line=26)     x=alt.X('Year',axis=alt.Axis(titleFontSize=16)),
     [28](vscode-notebook-cell://codespaces%2Bdidactic-space-engine-65774w5xrjh4q79/workspaces/pbc-graphing/notebooks/opioids.ipynb#X10sdnNjb2RlLXJlbW90ZQ%3D%3D?line=27)     y=alt.Y('Opiod Fatalities', axis=alt.Axis(titleFontSize=16)),
   (...)
     [33](vscode-notebook-cell://codespaces%2Bdidactic-space-engine-65774w5xrjh4q79/workspaces/pbc-graphing/notebooks/opioids.ipynb#X10sdnNjb2RlLXJlbW90ZQ%3D%3D?line=32)     )
     [34](vscode-notebook-cell://codespaces%2Bdidactic-space-engine-65774w5xrjh4q79/workspaces/pbc-graphing/notebooks/opioids.ipynb#X10sdnNjb2RlLXJlbW90ZQ%3D%3D?line=33) )
---> [36](vscode-notebook-cell://codespaces%2Bdidactic-space-engine-65774w5xrjh4q79/workspaces/pbc-graphing/notebooks/opioids.ipynb#X10sdnNjb2RlLXJlbW90ZQ%3D%3D?line=35) chart.save('opioid_fatalties.png', format = 'png')

File [~/.python/current/lib/python3.10/site-packages/altair/vegalite/v5/api.py:1084](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/vegalite/v5/api.py:1084), in TopLevelMixin.save(self, fp, format, override_data_transformer, scale_factor, vegalite_version, vega_version, vegaembed_version, **kwargs)
   [1082](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/vegalite/v5/api.py:1082) if override_data_transformer:
   [1083](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/vegalite/v5/api.py:1083)     with data_transformers.disable_max_rows():
-> [1084](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/vegalite/v5/api.py:1084)         result = save(**kwds)
   [1085](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/vegalite/v5/api.py:1085) else:
   [1086](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/vegalite/v5/api.py:1086)     result = save(**kwds)

File [~/.python/current/lib/python3.10/site-packages/altair/utils/save.py:189](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/save.py:189), in save(chart, fp, vega_version, vegaembed_version, format, mode, vegalite_version, embed_options, json_kwds, webdriver, scale_factor, engine, inline, **kwargs)
    [182](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/save.py:182) else:
    [183](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/save.py:183)     # Temporarily turn off any data transformers so that all data is inlined
    [184](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/save.py:184)     # when calling chart.to_dict. This is relevant for vl-convert which cannot access
    [185](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/save.py:185)     # local json files which could be created by a json data transformer. Furthermore,
    [186](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/save.py:186)     # we don't exit the with statement until this function completed due to the issue
    [187](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/save.py:187)     # described at https://github.com/vega/vl-convert/issues/31
    [188](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/save.py:188)     with data_transformers.enable("default"), data_transformers.disable_max_rows():
--> [189](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/save.py:189)         perform_save()

File [~/.python/current/lib/python3.10/site-packages/altair/utils/save.py:152](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/save.py:152), in save.<locals>.perform_save()
    [150](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/save.py:150)     write_file_or_filename(fp, mimebundle["text/html"], mode="w")
    [151](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/save.py:151) elif format in ["png", "svg", "pdf", "vega"]:
--> [152](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/save.py:152)     mimebundle = spec_to_mimebundle(
    [153](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/save.py:153)         spec=spec,
    [154](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/save.py:154)         format=format,
    [155](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/save.py:155)         mode=inner_mode,
    [156](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/save.py:156)         vega_version=vega_version,
    [157](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/save.py:157)         vegalite_version=vegalite_version,
    [158](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/save.py:158)         vegaembed_version=vegaembed_version,
    [159](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/save.py:159)         webdriver=webdriver,
    [160](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/save.py:160)         scale_factor=scale_factor,
    [161](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/save.py:161)         engine=engine,
    [162](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/save.py:162)         **kwargs,
    [163](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/save.py:163)     )
    [164](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/save.py:164)     if format == "png":
    [165](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/save.py:165)         write_file_or_filename(fp, mimebundle[0]["image/png"], mode="wb")

File [~/.python/current/lib/python3.10/site-packages/altair/utils/mimebundle.py:60](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/mimebundle.py:60), in spec_to_mimebundle(spec, format, mode, vega_version, vegaembed_version, vegalite_version, engine, **kwargs)
     [57](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/mimebundle.py:57)     mode = "vega"
     [59](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/mimebundle.py:59) if format in ["png", "svg", "pdf", "vega"]:
---> [60](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/mimebundle.py:60)     return _spec_to_mimebundle_with_engine(
     [61](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/mimebundle.py:61)         spec, format, mode, engine=engine, **kwargs
     [62](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/mimebundle.py:62)     )
     [63](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/mimebundle.py:63) if format == "html":
     [64](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/mimebundle.py:64)     html = spec_to_html(
     [65](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/mimebundle.py:65)         spec,
     [66](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/mimebundle.py:66)         mode=mode,
   (...)
     [70](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/mimebundle.py:70)         **kwargs,
     [71](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/mimebundle.py:71)     )

File [~/.python/current/lib/python3.10/site-packages/altair/utils/mimebundle.py:155](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/mimebundle.py:155), in _spec_to_mimebundle_with_engine(spec, format, mode, **kwargs)
    [152](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/mimebundle.py:152) elif normalized_engine == "altairsaver":
    [153](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/mimebundle.py:153)     import altair_saver
--> [155](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/mimebundle.py:155)     return altair_saver.render(spec, format, mode=mode, **kwargs)
    [156](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/mimebundle.py:156) else:
    [157](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/mimebundle.py:157)     # This should be validated above
    [158](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/mimebundle.py:158)     # but raise exception for the sake of future development
    [159](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/mimebundle.py:159)     raise ValueError(
    [160](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/mimebundle.py:160)         "Unexpected normalized_engine {eng!r}".format(eng=normalized_engine)
    [161](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair/utils/mimebundle.py:161)     )

File [~/.python/current/lib/python3.10/site-packages/altair_saver/_core.py:257](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/_core.py:257), in render(chart, fmts, mode, embed_options, method, **kwargs)
    [255](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/_core.py:255)     Saver = _select_saver(method, mode=mode, fmt=fmt)
    [256](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/_core.py:256)     saver = Saver(spec, mode=mode, embed_options=embed_options, **kwargs)
--> [257](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/_core.py:257)     mimebundle.update(saver.mimebundle(fmt))
    [259](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/_core.py:259) return mimebundle

File [~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_saver.py:90](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_saver.py:90), in Saver.mimebundle(self, fmts)
     [82](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_saver.py:82)         raise ValueError(
     [83](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_saver.py:83)             f"invalid fmt={fmt!r}; must be one of {self.valid_formats[self._mode]}."
     [84](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_saver.py:84)         )
     [85](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_saver.py:85)     mimetype = fmt_to_mimetype(
     [86](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_saver.py:86)         fmt,
     [87](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_saver.py:87)         vega_version=self._package_versions["vega"],
     [88](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_saver.py:88)         vegalite_version=self._package_versions["vega-lite"],
     [89](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_saver.py:89)     )
---> [90](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_saver.py:90)     bundle[mimetype] = self._serialize(fmt, "mimebundle")
     [91](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_saver.py:91) return bundle

File [~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_selenium.py:284](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_selenium.py:284), in SeleniumSaver._serialize(self, fmt, content_type)
    [283](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_selenium.py:283) def _serialize(self, fmt: str, content_type: str) -> MimebundleContent:
--> [284](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_selenium.py:284)     out = self._extract(fmt)
    [285](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_selenium.py:285)     if fmt == "png":
    [286](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_selenium.py:286)         assert isinstance(out, str)

File [~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_selenium.py:237](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_selenium.py:237), in SeleniumSaver._extract(self, fmt)
    [232](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_selenium.py:232) driver = self._registry.get(self._webdriver, self._driver_timeout)
    [234](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_selenium.py:234) if self._offline:
    [235](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_selenium.py:235)     js_resources = {
    [236](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_selenium.py:236)         "vega.js": get_bundled_script("vega", self._package_versions["vega"]),
--> [237](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_selenium.py:237)         "vega-lite.js": get_bundled_script(
    [238](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_selenium.py:238)             "vega-lite", self._package_versions["vega-lite"]
    [239](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_selenium.py:239)         ),
    [240](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_selenium.py:240)         "vega-embed.js": get_bundled_script(
    [241](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_selenium.py:241)             "vega-embed", self._package_versions["vega-embed"]
    [242](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_selenium.py:242)         ),
    [243](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_selenium.py:243)     }
    [244](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_selenium.py:244)     html = HTML_TEMPLATE.format(
    [245](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_selenium.py:245)         vega_url="[/vega.js](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/vega.js)",
    [246](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_selenium.py:246)         vegalite_url="[/vega-lite.js](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/vega-lite.js)",
    [247](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_selenium.py:247)         vegaembed_url="[/vega-embed.js](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/vega-embed.js)",
    [248](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_selenium.py:248)     )
    [249](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_saver/savers/_selenium.py:249) else:

File [~/.python/current/lib/python3.10/site-packages/altair_viewer/_scripts.py:40](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_viewer/_scripts.py:40), in get_bundled_script(package, version)
     [36](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_viewer/_scripts.py:36) if package not in listing:
     [37](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_viewer/_scripts.py:37)     raise ValueError(
     [38](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_viewer/_scripts.py:38)         f"package {package!r} not recognized. Available: {list(listing)}"
     [39](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_viewer/_scripts.py:39)     )
---> [40](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_viewer/_scripts.py:40) version_str = find_version(version, listing[package])
     [41](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_viewer/_scripts.py:41) path = f"scripts/{package}-{version_str}.js"
     [42](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_viewer/_scripts.py:42) content = pkgutil.get_data("altair_viewer", path)

File [~/.python/current/lib/python3.10/site-packages/altair_viewer/_utils.py:212](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_viewer/_utils.py:212), in find_version(version, candidates, strict_micro)
    [210](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_viewer/_utils.py:210) matches = [c for c in cand if v.matches(c)]
    [211](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_viewer/_utils.py:211) if not matches:
--> [212](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_viewer/_utils.py:212)     raise NoMatchingVersions(
    [213](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_viewer/_utils.py:213)         f"No matches for version={version!r} among {candidates}.\n"
    [214](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_viewer/_utils.py:214)         "Often this can be fixed by updating altair_viewer:\n"
    [215](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_viewer/_utils.py:215)         "    pip install -U altair_viewer"
    [216](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_viewer/_utils.py:216)     )
    [217](https://vscode-remote+codespaces-002bdidactic-002dspace-002dengine-002d65774w5xrjh4q79.vscode-resource.vscode-cdn.net/workspaces/pbc-graphing/notebooks/~/.python/current/lib/python3.10/site-packages/altair_viewer/_utils.py:217) return str(matches[-1])

NoMatchingVersions: No matches for version='5.15.1' among ['4.0.2', '4.8.1', '4.17.0'].
Often this can be fixed by updating altair_viewer:
    pip install -U altair_viewer

I can't quite tell which package is unmatched. Would be happy to run more tests if that would be helpful.

@donaldbraman ➜ /workspaces/pbc-graphing (main) $ pip freeze | grep altair
altair==5.1.2
altair-data-server==0.4.1
altair-saver==0.5.0
altair-viewer==0.4.0
@donaldbraman ➜ /workspaces/pbc-graphing (main) $ pip freeze | grep vega
vega==4.0.0

@joelostblom
Copy link
Member

It is currently recommended to use vl-convert to save altair charts to static formats https://github.com/vega/vl-convert. Try using that instead of altair-saver and it should solve the issues related to saving.

@joelostblom
Copy link
Member

Since Altair 5.3, the functionality of Altair Viewer is now available in Altair via the vl-convert package instead. See the docs on how to use the browser renderer to display charts via .show(), and the PR vega/altair#3379 for more details.

We are going to archive this repo, so I'm closing all the open issues and PRs before doing so. Try out the new options for rendering charts mentioned above and if you run into issues, please open an issue directly in the altair or vl-convert repo.

@joelostblom joelostblom closed this as not planned Won't fix, can't repro, duplicate, stale Mar 30, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants