Update (01 Feb 2021): I found a workaround, but have a warning popping up that I am unable to remove.
I started by copying the app's plot to a blank figure which is hidden from view from the user. Colormapeditor() is then called and makes edits to this figure. A listener in the app updates the app's plot based on this hidden figure, which in turn alters the color map settings based on what the user picks. However, I now get the following warnings, which seems to be related to this listener. Any idea how I might go about fixing them, or perhaps a way to implement colormapeditor() without using this new method?
Warning: Error occurred while executing the listener callback for event MarkedDirty
defined for class matlab.graphics.axis.colorspace.MapColorSpace:
Attempt to modify the tree during an update traversal.