Opened 3 weeks ago

Closed 2 weeks ago

#19743 closed defect (fixed)

Volume Viewer histogram harsh in dark mode

Reported by: jianghai.zhu@… Owned by: Zach Pearson
Priority: normal Milestone:
Component: UI Version:
Keywords: Cc: Tom Goddard, Greg Couch
Blocked By: Blocking:
Notify when closed: Platform: all
Project: ChimeraX

Description

The following bug report has been submitted:
Platform:        macOS-14.8.3-arm64-arm-64bit
ChimeraX Version: 1.11 (2025-12-17 06:45:39 UTC)
Description
In version 1.11, the color scheme for the Volume Viewer became quite harsh for eyes in dark mode. Big white histgram on top of the black background is really unpleasant. Please see the attached picture. The way version 1.10 handled it was much better, even though it could use a little more contrast.

OpenGL version: 4.1 Metal - 88.1
OpenGL renderer: Apple M2 Pro
OpenGL vendor: Apple

Python: 3.11.9
Locale: UTF-8
Qt version: PyQt6 6.9.1, Qt 6.9.0
Qt runtime version: 6.9.2
Qt platform: cocoa
Hardware:

    Hardware Overview:

      Model Name: MacBook Pro
      Model Identifier: Mac14,10
      Model Number: MNW83LL/A
      Chip: Apple M2 Pro
      Total Number of Cores: 12 (8 performance and 4 efficiency)
      Memory: 16 GB
      System Firmware Version: 13822.61.10
      OS Loader Version: 10151.140.19.700.2

Software:

    System Software Overview:

      System Version: macOS 14.8.3 (23J220)
      Kernel Version: Darwin 23.6.0
      Time since boot: 45 minutes, 12 seconds

Graphics/Displays:

    Apple M2 Pro:

      Chipset Model: Apple M2 Pro
      Type: GPU
      Bus: Built-In
      Total Number of Cores: 19
      Vendor: Apple (0x106b)
      Metal Support: Metal 3
      Displays:
        BenQ PD3200Q:
          Resolution: 2560 x 1440 (QHD/WQHD - Wide Quad High Definition)
          UI Looks like: 2560 x 1440 @ 60.00Hz
          Main Display: Yes
          Mirror: Off
          Online: Yes
          Rotation: Supported


Installed Packages:
    aiohappyeyeballs: 2.6.1
    aiohttp: 3.13.1
    aiosignal: 1.4.0
    alabaster: 1.0.0
    annotated-types: 0.7.0
    anyio: 4.12.0
    appdirs: 1.4.4
    appnope: 0.1.4
    asttokens: 3.0.1
    attrs: 25.4.0
    babel: 2.17.0
    beautifulsoup4: 4.13.5
    blockdiag: 3.0.0
    blosc2: 3.12.2
    build: 1.3.0
    certifi: 2025.7.14
    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.1
    ChimeraX-AlignmentMatrices: 2.1
    ChimeraX-Alignments: 3.1.1
    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.61.4
    ChimeraX-AtomicLibrary: 14.2.1
    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
    ChimeraX-ChangeChains: 1.1
    ChimeraX-CheckWaters: 1.5
    ChimeraX-ChemGroup: 2.0.2
    ChimeraX-Clashes: 2.3
    ChimeraX-clix: 0.2.5
    ChimeraX-ColorActions: 1.0.5
    ChimeraX-ColorGlobe: 1.0
    ChimeraX-ColorKey: 1.5.8
    ChimeraX-CommandLine: 1.3.0
    ChimeraX-ConnectStructure: 2.0.1
    ChimeraX-Contacts: 1.0.1
    ChimeraX-Core: 1.11
    ChimeraX-CoreFormats: 1.2
    ChimeraX-coulombic: 1.4.5
    ChimeraX-Crosslinks: 1.0
    ChimeraX-Crystal: 1.0
    ChimeraX-CrystalContacts: 1.0.1
    ChimeraX-DataFormats: 1.2.4
    ChimeraX-Dicom: 1.2.7
    ChimeraX-DistMonitor: 1.4.2
    ChimeraX-DockPrep: 1.1.4
    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.7.3
    ChimeraX-Label: 1.2
    ChimeraX-ListInfo: 1.2.2
    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.1.0
    ChimeraX-MDcrds: 2.17.2
    ChimeraX-MedicalToolbar: 1.1
    ChimeraX-Meeting: 1.0.1
    ChimeraX-Minimize: 1.3.2
    ChimeraX-MLP: 1.1.1
    ChimeraX-mmCIF: 2.16
    ChimeraX-MMTF: 2.2
    ChimeraX-ModelArchive: 1.0
    ChimeraX-Modeller: 1.5.22
    ChimeraX-ModelPanel: 1.6
    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-OrthoPick: 1.0.1
    ChimeraX-PDB: 2.7.11
    ChimeraX-PDBBio: 1.0.1
    ChimeraX-PDBLibrary: 1.0.5
    ChimeraX-PDBMatrices: 1.0
    ChimeraX-PickBlobs: 1.0.1
    ChimeraX-Positions: 1.0
    ChimeraX-PresetMgr: 1.1.4
    ChimeraX-ProfileGrids: 1.4.2
    ChimeraX-PubChem: 2.2
    ChimeraX-ReadPbonds: 1.0.1
    ChimeraX-Registration: 1.1.2
    ChimeraX-RemoteControl: 1.0
    ChimeraX-RenderByAttr: 1.6.5
    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.10
    ChimeraX-SelInspector: 1.0
    ChimeraX-SeqView: 2.17.3
    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-SpaceNavigator: 1.0
    ChimeraX-StdCommands: 1.19.1
    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-UI: 1.49.1
    ChimeraX-Umap: 1.0
    ChimeraX-uniprot: 2.3.2
    ChimeraX-UnitCell: 1.0.1
    ChimeraX-ViewDock: 1.5.2
    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
    comm: 0.2.3
    contourpy: 1.3.3
    coverage: 7.13.0
    cxservices: 1.2.3
    cycler: 0.12.1
    Cython: 3.1.4
    debugpy: 1.8.19
    decorator: 5.2.1
    docutils: 0.21.2
    executing: 2.2.1
    filelock: 3.19.1
    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
    idna: 3.11
    ihm: 2.2
    imagecodecs: 2024.6.1
    imagesize: 1.4.1
    iniconfig: 2.3.0
    ipykernel: 6.30.1
    ipython: 9.5.0
    ipython_pygments_lexers: 1.1.1
    ipywidgets: 8.1.8
    jedi: 0.19.2
    Jinja2: 3.1.6
    jsonschema: 4.25.1
    jsonschema-specifications: 2025.9.1
    jupyter_client: 8.6.3
    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
    msgpack: 1.1.1
    multidict: 6.7.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: 1.26.4
    OpenMM: 8.2.0
    openvr: 1.26.701
    packaging: 25.0
    ParmEd: 4.2.2
    parso: 0.8.5
    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.5.1
    pluggy: 1.6.0
    prompt_toolkit: 3.0.52
    propcache: 0.4.1
    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
    pydicom: 2.4.4
    Pygments: 2.18.0
    pynmrstar: 3.3.6
    pynrrd: 1.0.0
    PyOpenGL: 3.1.10
    PyOpenGL-accelerate: 3.1.10
    pyopenxr: 1.1.4501
    pyparsing: 3.2.5
    pyproject_hooks: 1.2.0
    PyQt6-commercial: 6.9.1
    PyQt6-Qt6: 6.9.2
    PyQt6-WebEngine-commercial: 6.9.0
    PyQt6-WebEngine-Qt6: 6.9.2
    PyQt6_sip: 13.10.2
    pytest: 9.0.2
    pytest-cov: 7.0.0
    python-dateutil: 2.9.0.post0
    python-dotenv: 1.2.1
    python-multipart: 0.0.21
    pytz: 2025.2
    pyzmq: 27.1.0
    qtconsole: 5.7.0
    QtPy: 2.4.3
    qtshim: 1.2
    RandomWords: 0.4.0
    referencing: 0.37.0
    requests: 2.32.5
    roman-numerals: 4.0.0
    roman-numerals-py: 4.0.0
    rpds-py: 0.30.0
    scipy: 1.14.0
    setuptools: 80.9.0
    sfftk-rw: 0.8.1
    six: 1.17.0
    snowballstemmer: 3.0.1
    sortedcontainers: 2.4.0
    soupsieve: 2.8
    Sphinx: 8.2.3
    sphinx-autodoc-typehints: 3.2.0
    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.0.4
    stack-data: 0.6.3
    starlette: 0.50.0
    superqt: 0.7.6
    tables: 3.10.2
    tcia_utils: 1.5.1
    tifffile: 2025.3.13
    tinyarray: 1.2.5
    tornado: 6.5.4
    traitlets: 5.14.3
    typing-inspection: 0.4.2
    typing_extensions: 4.15.0
    tzdata: 2025.3
    urllib3: 2.6.2
    uvicorn: 0.38.0
    wcwidth: 0.2.14
    webcolors: 24.11.1
    wheel: 0.45.1
    wheel-filename: 1.4.2
    widgetsnbextension: 4.0.15
    yarl: 1.22.0
File attachment: Screenshot 2026-01-17 at 11.23.59 AM.png

Screenshot 2026-01-17 at 11.23.59 AM.png

Attachments (2)

Screenshot 2026-01-17 at 11.23.59 AM.png (13.0 KB ) - added by jianghai.zhu@… 3 weeks ago.
Added by email2trac
Screenshot 2026-01-20 at 14.10.06.png (42.4 KB ) - added by Zach Pearson 2 weeks ago.
50% gray histogram

Download all attachments as: .zip

Change History (8)

by jianghai.zhu@…, 3 weeks ago

Added by email2trac

comment:1 by Eric Pettersen, 2 weeks ago

Cc: Tom Goddard Greg Couch added
Component: UnassignedUI
Owner: set to Zach Pearson
Platform: all
Project: ChimeraX
Status: newassigned
Summary: ChimeraX bug report submissionVolume Viewer histogram harsh in dark mode

comment:2 by Zach Pearson, 2 weeks ago

Thank you for the feedback. Would 50% gray be too bright?

comment:3 by jianghai.zhu@…, 2 weeks ago

I don’t know. Do you have a screenshot?



Best,


— Jianghai


From: Zach Pearson <zjp@cgl.ucsf.edu>
Date: Tuesday, January 20, 2026 at 4:33 PM
To: ChimeraX-bugs@cgl.ucsf.edu <ChimeraX-bugs@cgl.ucsf.edu>
Cc: Zhu, Jianghai (NIH/NIAID) [C] <jianghai.zhu@nih.gov>, goddard@cgl.ucsf.edu <goddard@cgl.ucsf.edu>, gregc@cgl.ucsf.edu <gregc@cgl.ucsf.edu>
Subject: [EXTERNAL] Re: [ChimeraX] #19743: Volume Viewer histogram harsh in dark mode (was: ChimeraX bug report submission)

Thank you for the feedback. Would 50% gray be too bright?

>
>
>

CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and are confident the content is safe.

by Zach Pearson, 2 weeks ago

50% gray histogram

comment:4 by Zach Pearson, 2 weeks ago

I've attached an example to this ticket.

comment:5 by jianghai.zhu@…, 2 weeks ago

Yes, 50% gray is much better.



Best,


— Jianghai


From: ChimeraX <ChimeraX-bugs-admin@cgl.ucsf.edu>
Date: Tuesday, January 20, 2026 at 5:11 PM
To: Zhu, Jianghai (NIH/NIAID) [C] <jianghai.zhu@nih.gov>, zjp@cgl.ucsf.edu <zjp@cgl.ucsf.edu>
Cc: goddard@cgl.ucsf.edu <goddard@cgl.ucsf.edu>, gregc@cgl.ucsf.edu <gregc@cgl.ucsf.edu>
Subject: [EXTERNAL] Re: [ChimeraX] #19743: Volume Viewer histogram harsh in dark mode

#19743: Volume Viewer histogram harsh in dark mode
-------------------------------------+--------------------------
          Reporter:  jianghai.zhu@…  |      Owner:  Zach Pearson
              Type:  defect          |     Status:  assigned
          Priority:  normal          |  Milestone:
         Component:  UI              |    Version:
        Resolution:                  |   Keywords:
        Blocked By:                  |   Blocking:
Notify when closed:                  |   Platform:  all
           Project:  ChimeraX        |
-------------------------------------+--------------------------
Comment (by Zach Pearson):

 I've attached an example to this ticket.
--
Ticket URL: <https://gcc02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.rbvi.ucsf.edu%2Ftrac%2FChimeraX%2Fticket%2F19743%23comment%3A4&data=05%7C02%7Cjianghai.zhu%40nih.gov%7Cfb2fb37d5f11442eab9808de5870db5e%7C14b77578977342d58507251ca2dc2b06%7C0%7C0%7C639045438908799080%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=Kmlq7eGNUuKZKW7dFDcTMnlN0c6AEKnK8Hmf7NKjBnA%3D&reserved=0<https://www.rbvi.ucsf.edu/trac/ChimeraX/ticket/19743#comment:4>>
ChimeraX <https://gcc02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.rbvi.ucsf.edu%2Fchimerax%2F&data=05%7C02%7Cjianghai.zhu%40nih.gov%7Cfb2fb37d5f11442eab9808de5870db5e%7C14b77578977342d58507251ca2dc2b06%7C0%7C0%7C639045438908829560%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=jJssnaurb7OgjX0GLgOWL2BachY1QtBxT3s7ZsxLPO4%3D&reserved=0<https://www.rbvi.ucsf.edu/chimerax/>>
ChimeraX Issue Tracker
CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and are confident the content is safe.

comment:6 by Zach Pearson, 2 weeks ago

Resolution: fixed
Status: assignedclosed

Great, it'll be in tomorrow's daily build and 1.11.1, when it comes out.

Note: See TracTickets for help on using tickets.