Opened 2 weeks ago

Closed 8 days ago

Last modified 7 days ago

#20067 closed defect (fixed)

Render by attribute configure: ValueError: too many values to unpack (expected 3)

Reported by: goddard@… Owned by: Eric Pettersen
Priority: normal Milestone:
Component: Depiction Version:
Keywords: Cc:
Blocked By: Blocking:
Notify when closed: Platform: all
Project: ChimeraX

Description

The following bug report has been submitted:
Platform:        macOS-26.3.1-arm64-arm-64bit
ChimeraX Version: 1.12.dev202603101758 (2026-03-10 17:58:10 UTC)
Description
I get this error showing Render by Attribute using the programmatic API for an integer attribute where only one residue has a value (= 1).  The Render by Attribute tool does show but the histogram is not shown and instead contains the text "All mutation_score values are 1".

Log:
UCSF ChimeraX version: 1.12.dev202603101758 (2026-03-10)  
© 2016-2026 Regents of the University of California. All rights reserved.  
How to cite UCSF ChimeraX  

> open /Users/goddard/ucsf/people/howard/lilace_scores_wide_all.csv format ms

Summary of feedback from opening
/Users/goddard/ucsf/people/howard/lilace_scores_wide_all.csv  
---  
note | Plotted 7827 mutations with effect_Buprenorphine on x-axis and effect_C6guano on y-axis  
  
Opened deep mutational scan data for 7830 mutations of 399 residues with score
names effect_Buprenorphine, effect_C6guano, effect_DAMGO, effect_FSK,
effect_Morphine, effect_Naloxone, effect_PZM21, effect_TRV130,
effect_carfentanil, effect_fentanyl, effect_mitragynine, effect_surface, pos.  

> open 8ef5 format mmcif fromDatabase pdb

8ef5 title:  
Fentanyl-bound mu-opioid receptor-Gi complex [more info...]  
  
Chain information for 8ef5 #1  
---  
Chain | Description | UniProt  
A F | Guanine nucleotide-binding protein G(i) subunit alpha-1 | GNAI1_HUMAN 1-354  
B | Guanine nucleotide-binding protein G(I)/G(S)/G(T) subunit beta-1 | GBB1_RAT 2-340  
C | Guanine nucleotide-binding protein G(I)/G(S)/G(O) subunit gamma-2 | GBG2_BOVIN 1-68  
E | scFv16 |   
M R | Mu-type opioid receptor | OPRM_HUMAN 2-368  
  
Non-standard residues in 8ef5 #1  
---  
7V7 — N-phenyl-N-[1-(2-phenylethyl)piperidin-4-yl]propanamide  
CLR — cholesterol  
  
Mutation set lilace_scores_wide_all has 2 associated chains #1/M,R.  

> mutationscores define mutation_score fromScoreName effect_Buprenorphine
> combine count ranges "effect_Buprenorphine >= 0.634 and effect_Buprenorphine
> <= 0.745 and effect_C6guano >= 0.121 and effect_C6guano <= 0.307"

Defined score mutation_score having range 1 to 1 for 1 residues using 1
mutations  
Set attribute mutation_score for 2 residues of chain #1/M,R  

> color byattribute r:mutation_score #1/M,R palette
> 1,blue:1,white:1,white:1,red noValueColor white

4954 atoms, 587 residues, atom mutation_score range 1 to 1  

> ui tool show "Render/Select by Attribute"

Traceback (most recent call last):  
File
"/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-
packages/chimerax/mutation_scores/ms_color_history.py", line 287, in
_show_render_by_attribute_gui  
_show_render_by_attribute_panel(self.session, mset, attr_name, palette)  
File
"/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-
packages/chimerax/mutation_scores/ms_color_history.py", line 305, in
_show_render_by_attribute_panel  
rba_gui.configure(models = models, target = 'residues', tab = 'render',
attr_name = attribute_name,  
File
"/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-
packages/chimerax/render_by_attr/tool.py", line 485, in configure  
cur_min, cur_max, data = histogram.data_source  
^^^^^^^^^^^^^^^^^^^^^^  
ValueError: too many values to unpack (expected 3)  
  
ValueError: too many values to unpack (expected 3)  
  
File
"/Users/goddard/ucsf/chimerax/ChimeraX.app/Contents/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-
packages/chimerax/render_by_attr/tool.py", line 485, in configure  
cur_min, cur_max, data = histogram.data_source  
^^^^^^^^^^^^^^^^^^^^^^  
  
See log for complete Python traceback.  
  




OpenGL version: 4.1 Metal - 90.5
OpenGL renderer: Apple M2 Ultra
OpenGL vendor: Apple

Python: 3.11.9
Locale: en_US.UTF-8
Qt version: PySide6 6.10.1, Qt 6.10.1
Qt runtime version: 6.10.1
Qt platform: cocoa
Hardware:

    Hardware Overview:

      Model Name: Mac Studio
      Model Identifier: Mac14,14
      Model Number: Z1800003VLL/A
      Chip: Apple M2 Ultra
      Total Number of Cores: 24 (16 Performance and 8 Efficiency)
      Memory: 64 GB
      System Firmware Version: 13822.81.10
      OS Loader Version: 13822.81.10

Software:

    System Software Overview:

      System Version: macOS 26.3.1 (a) (25D771280a)
      Kernel Version: Darwin 25.3.0
      Time since boot: 7 days, 15 hours

Graphics/Displays:

    Apple M2 Ultra:

      Chipset Model: Apple M2 Ultra
      Type: GPU
      Bus: Built-In
      Total Number of Cores: 60
      Vendor: Apple (0x106b)
      Metal Support: Metal 4
      Displays:
        PHL 278B1:
          Resolution: 3840 x 2160 (2160p/4K UHD 1 - Ultra High Definition)
          UI Looks like: 1920 x 1080 @ 60.00Hz
          Main Display: Yes
          Mirror: Off
          Online: Yes
          Rotation: Supported


Installed Packages:
    accessible-pygments: 0.0.5
    aiohappyeyeballs: 2.6.1
    aiohttp: 3.13.1
    aiosignal: 1.4.0
    alabaster: 1.0.0
    annotated-types: 0.7.0
    anyio: 4.12.1
    appdirs: 1.4.4
    appnope: 0.1.4
    asttokens: 3.0.1
    attrs: 25.4.0
    babel: 2.18.0
    beautifulsoup4: 4.13.5
    blockdiag: 3.0.0
    blosc2: 4.0.0
    build: 1.3.0
    certifi: 2025.8.3
    cftime: 1.6.5
    charset-normalizer: 3.4.4
    ChimeraX-AddCharge: 1.5.20
    ChimeraX-AddH: 2.2.8
    ChimeraX-AlignmentAlgorithms: 2.0.2
    ChimeraX-AlignmentHdrs: 3.6.2
    ChimeraX-AlignmentMatrices: 2.1
    ChimeraX-Alignments: 3.2
    ChimeraX-AlphaFold: 1.0.1
    ChimeraX-AltlocExplorer: 1.2
    ChimeraX-AmberInfo: 1.0
    ChimeraX-Animations: 1.0
    ChimeraX-Aniso: 1.3.2
    ChimeraX-Arrays: 1.1
    ChimeraX-Atomic: 1.66
    ChimeraX-AtomicLibrary: 14.4
    ChimeraX-AtomSearch: 2.0.1
    ChimeraX-AxesPlanes: 2.4
    ChimeraX-BasicActions: 1.1.3
    ChimeraX-BILD: 1.0
    ChimeraX-BlastProtein: 3.0.0
    ChimeraX-Boltz: 1.1
    ChimeraX-BondRot: 2.0.4
    ChimeraX-BugReporter: 1.0.2
    ChimeraX-BuildStructure: 2.13.1
    ChimeraX-Bumps: 1.0
    ChimeraX-BundleBuilder: 1.6.0
    ChimeraX-ButtonPanel: 1.0.1
    ChimeraX-CageBuilder: 1.0.1
    ChimeraX-CellPack: 1.0
    ChimeraX-Centroids: 1.4.1
    ChimeraX-ChangeChains: 1.1
    ChimeraX-CheckWaters: 1.5
    ChimeraX-ChemGroup: 2.0.2
    ChimeraX-CiliaBuilder: 1.0.9
    ChimeraX-CircosContacts: 0.3.4
    ChimeraX-Clashes: 2.3
    ChimeraX-ColorActions: 1.0.5
    ChimeraX-ColorGlobe: 1.0
    ChimeraX-ColorKey: 1.5.8
    ChimeraX-CommandLine: 1.3.1
    ChimeraX-ConnectStructure: 2.0.1
    ChimeraX-Contacts: 1.0.1
    ChimeraX-Core: 1.12.dev202603101758
    ChimeraX-CoreFormats: 1.2
    ChimeraX-coulombic: 1.4.5
    ChimeraX-Crosslinks: 1.0
    ChimeraX-Crystal: 1.0
    ChimeraX-CrystalContacts: 1.0.1
    ChimeraX-DAQplugin: 0.12.0
    ChimeraX-DataFormats: 1.2.4
    ChimeraX-Dicom: 1.2.7
    ChimeraX-DistMonitor: 1.4.2
    ChimeraX-DockPrep: 1.2
    ChimeraX-Dssp: 2.0
    ChimeraX-EMDB-SFF: 1.0
    ChimeraX-ESMFold: 1.0
    ChimeraX-FileHistory: 1.0.1
    ChimeraX-FunctionKey: 1.0.1
    ChimeraX-Geometry: 1.3
    ChimeraX-gltf: 1.0
    ChimeraX-Graphics: 1.4.1
    ChimeraX-Hbonds: 2.5.3
    ChimeraX-Help: 1.3
    ChimeraX-HKCage: 1.3
    ChimeraX-IHM: 1.1
    ChimeraX-ImageFormats: 1.2
    ChimeraX-IMOD: 1.0
    ChimeraX-IO: 1.0.4
    ChimeraX-ItemsInspection: 1.0.1
    ChimeraX-IUPAC: 1.0
    ChimeraX-KVFinder: 1.8.2
    ChimeraX-Label: 1.3
    ChimeraX-LightingGUI: 1.0
    ChimeraX-ListInfo: 1.3.1
    ChimeraX-Log: 1.2.2
    ChimeraX-LookingGlass: 1.1
    ChimeraX-Maestro: 1.9.2
    ChimeraX-Map: 1.3
    ChimeraX-MapData: 2.0
    ChimeraX-MapEraser: 1.0.1
    ChimeraX-MapFilter: 2.0.1
    ChimeraX-MapFit: 2.0
    ChimeraX-MapSeries: 2.1.1
    ChimeraX-Markers: 1.0.1
    ChimeraX-Mask: 1.0.2
    ChimeraX-MatchMaker: 2.2.2
    ChimeraX-MCopy: 1.0
    ChimeraX-MCPServer: 0.2.0
    ChimeraX-MDcrds: 2.17.2
    ChimeraX-MedicalToolbar: 1.1
    ChimeraX-Meeting: 1.0.1
    ChimeraX-Minimize: 1.3.5
    ChimeraX-MLP: 1.1.1
    ChimeraX-mmCIF: 2.16
    ChimeraX-MMTF: 2.2
    ChimeraX-ModelArchive: 1.0
    ChimeraX-Modeller: 1.5.23
    ChimeraX-ModelPanel: 1.6.1
    ChimeraX-ModelSeries: 1.0.1
    ChimeraX-Mol2: 2.0.3
    ChimeraX-Mole: 1.0
    ChimeraX-Morph: 1.0.2
    ChimeraX-MouseModes: 1.2
    ChimeraX-Movie: 1.0.1
    ChimeraX-MutationScores: 1.0
    ChimeraX-Neuron: 1.0
    ChimeraX-Nifti: 1.2
    ChimeraX-NMRSTAR: 1.0.2
    ChimeraX-NRRD: 1.2
    ChimeraX-Nucleotides: 2.0.3
    ChimeraX-OpenCommand: 1.15.2
    ChimeraX-OpenFold: 1.0
    ChimeraX-OrthoPick: 1.0.1
    ChimeraX-PDB: 2.7.12
    ChimeraX-PDBBio: 1.0.1
    ChimeraX-PDBLibrary: 1.0.5
    ChimeraX-PDBMatrices: 1.0
    ChimeraX-PickBlobs: 1.0.1
    ChimeraX-Positions: 1.0
    ChimeraX-PredictionExplorer: 1.0
    ChimeraX-PresetMgr: 1.1.4
    ChimeraX-ProfileGrids: 1.5.1
    ChimeraX-PubChem: 2.2
    ChimeraX-ReadPbonds: 1.0.1
    ChimeraX-Registration: 1.1.2
    ChimeraX-RemoteControl: 1.0
    ChimeraX-RenderByAttr: 1.8.1
    ChimeraX-RenumberResidues: 1.1
    ChimeraX-ResidueFit: 1.0.1
    ChimeraX-RestServer: 1.3.3
    ChimeraX-RNALayout: 1.0
    ChimeraX-RotamerLibMgr: 4.0
    ChimeraX-RotamerLibsDunbrack: 2.0
    ChimeraX-RotamerLibsDynameomics: 2.0
    ChimeraX-RotamerLibsRichardson: 2.0
    ChimeraX-SaveCommand: 1.5.2
    ChimeraX-Scenes: 0.3.1
    ChimeraX-SchemeMgr: 1.0
    ChimeraX-SDF: 2.0.3
    ChimeraX-Segger: 1.0
    ChimeraX-Segment: 1.0.1
    ChimeraX-Segmentations: 3.5.12
    ChimeraX-SelInspector: 1.0
    ChimeraX-SeqView: 2.17.5
    ChimeraX-Shape: 1.1
    ChimeraX-Shell: 1.0.1
    ChimeraX-Shortcuts: 1.2.1
    ChimeraX-ShowSequences: 1.0.3
    ChimeraX-SideView: 1.0.1
    ChimeraX-SimilarStructures: 1.0.1
    ChimeraX-Smiles: 2.1.2
    ChimeraX-SmoothLines: 1.0
    ChimeraX-SNFG: 1.0
    ChimeraX-SpaceNavigator: 1.0
    ChimeraX-StdCommands: 1.19.3
    ChimeraX-STL: 1.0.1
    ChimeraX-Storm: 1.0
    ChimeraX-StructMeasure: 1.2.1
    ChimeraX-Struts: 1.0.1
    ChimeraX-Surface: 1.0.1
    ChimeraX-SwapAA: 2.0.1
    ChimeraX-SwapRes: 2.5.2
    ChimeraX-TapeMeasure: 1.0
    ChimeraX-TaskManager: 1.0
    ChimeraX-Test: 1.0
    ChimeraX-Toolbar: 1.2.3
    ChimeraX-ToolshedUtils: 1.2.4
    ChimeraX-Topography: 1.0
    ChimeraX-ToQuest: 1.0
    ChimeraX-Tug: 1.0.1
    ChimeraX-TutorialReadFormat: 0.1
    ChimeraX-UI: 1.50.3
    ChimeraX-Umap: 1.0
    ChimeraX-uniprot: 2.3.2
    ChimeraX-UnitCell: 1.0.1
    ChimeraX-ViewDock: 1.6
    ChimeraX-VIPERdb: 1.0
    ChimeraX-Vive: 1.1
    ChimeraX-VolumeMenu: 1.0.1
    ChimeraX-vrml: 1.0
    ChimeraX-VTK: 1.0
    ChimeraX-WavefrontOBJ: 1.0
    ChimeraX-WebCam: 1.0.2
    ChimeraX-WebServices: 1.1.5
    ChimeraX-Zone: 1.0.1
    click: 8.3.1
    colorama: 0.4.6
    coloredlogs: 15.0.1
    comm: 0.2.3
    contourpy: 1.3.3
    coverage: 7.13.4
    cxservices: 1.2.3
    cycler: 0.12.1
    Cython: 3.1.4
    debugpy: 1.8.20
    decorator: 5.2.1
    docutils: 0.21.2
    executing: 2.2.1
    filelock: 3.19.1
    flatbuffers: 25.12.19
    fonttools: 4.61.1
    frozenlist: 1.8.0
    funcparserlib: 2.0.0a0
    glfw: 2.10.0
    grako: 3.16.5
    h11: 0.16.0
    h5py: 3.15.1
    html2text: 2025.4.15
    httpcore: 1.0.9
    httpx: 0.28.1
    httpx-sse: 0.4.3
    humanfriendly: 10.0
    idna: 3.11
    ihm: 2.2
    imagecodecs: 2024.6.1
    imagesize: 1.4.1
    iniconfig: 2.3.0
    ipykernel: 7.1.0
    ipython: 9.9.0
    ipython_pygments_lexers: 1.1.1
    ipywidgets: 8.1.8
    jedi: 0.19.2
    Jinja2: 3.1.6
    jsonschema: 4.26.0
    jsonschema-specifications: 2025.9.1
    jupyter_client: 8.8.0
    jupyter_core: 5.9.1
    jupyterlab_widgets: 3.0.16
    kiwisolver: 1.4.9
    line_profiler: 5.0.0
    lxml: 6.0.2
    lz4: 4.3.2
    Markdown: 3.8.2
    MarkupSafe: 3.0.3
    matplotlib: 3.10.7
    matplotlib-inline: 0.2.1
    mcp: 1.18.0
    mpmath: 1.3.0
    mrcfile: 1.5.4
    msgpack: 1.1.1
    multidict: 6.7.1
    narwhals: 2.16.0
    ndindex: 1.10.1
    nest-asyncio: 1.6.0
    netCDF4: 1.6.5
    networkx: 3.3
    nibabel: 5.2.0
    nptyping: 2.5.0
    numexpr: 2.14.1
    numpy: 2.4.2
    numpy: 1.26.4
    onnxruntime: 1.23.2
    OpenMM: 8.4.0
    openvr: 1.26.701
    packaging: 25.0
    pandas: 2.3.3
    ParmEd: 4.2.2
    parso: 0.8.6
    pep517: 0.13.1
    pexpect: 4.9.0
    pickleshare: 0.7.5
    pillow: 11.3.0
    pip: 25.2
    pkginfo: 1.12.1.2
    platformdirs: 4.7.1
    plotly: 6.5.2
    pluggy: 1.6.0
    prompt_toolkit: 3.0.52
    propcache: 0.4.1
    protobuf: 6.33.4
    psutil: 7.0.0
    ptyprocess: 0.7.0
    pure_eval: 0.2.3
    py-cpuinfo: 9.0.0
    pybind11: 3.0.1
    pycollada: 0.8
    pydantic: 2.12.5
    pydantic-settings: 2.12.0
    pydantic_core: 2.41.5
    pydata-sphinx-theme: 0.16.1
    pydicom: 2.4.4
    Pygments: 2.18.0
    pyKVFinder: 0.9.0
    pynmrstar: 3.5.0
    pynrrd: 1.0.0
    PyOpenGL: 3.1.10
    PyOpenGL-accelerate: 3.1.10
    pyopenxr: 1.1.4501
    pyparsing: 3.3.2
    pyproject_hooks: 1.2.0
    PySide6: 6.10.1
    PySide6_Addons: 6.10.1
    PySide6_Essentials: 6.10.1
    pytest: 9.0.2
    pytest-cov: 7.0.0
    python-dateutil: 2.9.0.post0
    python-dotenv: 1.2.1
    python-multipart: 0.0.22
    pyzmq: 27.1.0
    qtconsole: 5.7.0
    QtPy: 2.4.3
    qtshim: 1.2.1
    RandomWords: 0.4.0
    referencing: 0.37.0
    requests: 2.32.5
    roman-numerals: 4.1.0
    rpds-py: 0.30.0
    scipy: 1.16.3
    scipy: 1.14.0
    setuptools: 80.9.0
    sfftk-rw: 0.8.1
    shiboken6: 6.10.1
    six: 1.17.0
    snowballstemmer: 3.0.1
    sortedcontainers: 2.4.0
    soupsieve: 2.8.3
    Sphinx: 9.0.4
    sphinx-autodoc-typehints: 3.6.1
    sphinxcontrib-applehelp: 2.0.0
    sphinxcontrib-blockdiag: 3.0.0
    sphinxcontrib-devhelp: 2.0.0
    sphinxcontrib-htmlhelp: 2.1.0
    sphinxcontrib-jsmath: 1.0.1
    sphinxcontrib-qthelp: 2.0.0
    sphinxcontrib-serializinghtml: 2.0.0
    sse-starlette: 3.2.0
    stack-data: 0.6.3
    starlette: 0.52.1
    superqt: 0.7.6
    sympy: 1.14.0
    tables: 3.10.2
    tcia_utils: 1.5.1
    tifffile: 2025.3.13
    tinyarray: 1.2.5
    tomlkit: 0.14.0
    tornado: 6.5.4
    traitlets: 5.14.3
    typing-inspection: 0.4.2
    typing_extensions: 4.15.0
    urllib3: 2.6.3
    uvicorn: 0.40.0
    wcwidth: 0.6.0
    webcolors: 24.11.1
    wheel: 0.45.1
    wheel-filename: 1.4.2
    widgetsnbextension: 4.0.15
    yarl: 1.22.0

Change History (4)

comment:1 by Tom Goddard, 2 weeks ago

Component: UnassignedDepiction
Owner: set to Eric Pettersen
Platform: all
Project: ChimeraX
Status: newassigned
Summary: ChimeraX bug report submissionRender by attribute configure: ValueError: too many values to unpack (expected 3)

comment:2 by Eric Pettersen, 8 days ago

Resolution: fixed
Status: assignedclosed

I made it so that it doesn't throw the error. The histogram code doesn't really support data sets that contain only one value, though I could be persuade that it should.

comment:3 by Tom Goddard, 8 days ago

I think attributes that have just one value are unusual and usually indicate an error. So maybe not necessary to show the histogram given that the text says there is just one value.

comment:4 by Eric Pettersen, 7 days ago

Also, handling 1-value "histograms" requires a bunch of special-case code in various places, which is why it just shows that text currently.

Note: See TracTickets for help on using tickets.