Unfortunately those tables are wired pretty deeply into the TDK and Dex. There’s no easy way to create a new table. The only thing I can think that may be helpful is target labels. If you make a target label with a text list of values then you could parse apart those values in an M-function. It’s not pretty, but it would work as long as your strings are not very long (<50 characters). Another option, if you don’t have many chart shapes is to use jpegs. You can define a target as having an image as opposed to a color.
Let me know if either of those don’t work and I can try to help you find another way around.