因此,我试图通过metpy函数metpy.plots.ctables.read_colortable
导入自定义的色表.tbl文件,以使用Py-ART绘制一些雷达场。
这些是我正在使用的代码:
from metpy.plots import ctables
ctables.registry.add_colortable('zdr_table.tbl','nexrad_zdr')
zdr_cmap = ctables.registry.get_colortable('nexrad_zdr')
问题是,当我尝试执行此操作时,收到以下错误消息:
Traceback (most recent call last):
File "/home/viper/miniconda3/envs/pyart_env/lib/python3.8/site-packages/metpy/plots/ctables.py",line 95,in read_colortable
literal = _parse(line)
File "/home/viper/miniconda3/envs/pyart_env/lib/python3.8/site-packages/metpy/plots/ctables.py",line 67,in _parse
return ast.literal_eval(s)
File "/home/viper/miniconda3/envs/pyart_env/lib/python3.8/ast.py",line 96,in literal_eval
return _convert(node_or_string)
File "/home/viper/miniconda3/envs/pyart_env/lib/python3.8/ast.py",in _convert
return _convert_signed_num(node)
File "/home/viper/miniconda3/envs/pyart_env/lib/python3.8/ast.py",line 74,in _convert_signed_num
return _convert_num(node)
File "/home/viper/miniconda3/envs/pyart_env/lib/python3.8/ast.py",line 66,in _convert_num
raise ValueError('malformed node or string: ' + repr(node))
ValueError: malformed node or string: <_ast.Name object at 0x7fcf76e35c40>
During handling of the above exception,another exception occurred:
Traceback (most recent call last):
File "plot_zdr_ppi2.py",line 31,in <module>
ctables.registry.add_colortable('zdr_table.tbl','nexrad_zdr')
File "/home/viper/miniconda3/envs/pyart_env/lib/python3.8/site-packages/metpy/plots/ctables.py",line 187,in add_colortable
self[name] = read_colortable(fobj)
File "/home/viper/miniconda3/envs/pyart_env/lib/python3.8/site-packages/metpy/plots/ctables.py",line 100,in read_colortable
raise RuntimeError('Malformed colortable.')
RuntimeError: Malformed colortable.
我尝试使用十六进制HTML和RGB算术格式,但结果相同。
有什么想法吗?