我正在使用虹吸制作动画雷达环路,我发现虹吸没有按时间/文件顺序提取数据。(示例如下)。
from siphon.cdmr import Dataset
from siphon.radarserver import get_radarserver_datasets, RadarServer
from siphon.catalog import TDSCatalog
from datetime import datetime
radar_station = "TWX"
ds = get_radarserver_datasets('http://thredds.ucar.edu/thredds/')
url = ds['NEXRAD Level III Radar from IDD'].follow().catalog_url
rs = RadarServer(url)
query = rs.query()
query.stations(radar_station).time_range(datetime(2021,11,10,22,0,0),
datetime(2021,11,10,23,0,0)).variables('N0Q')
rs.validate_query(query)
catalog = rs.get_catalog(query)
list(catalog.datasets.values())收益率...
[Level3_TWX_N0Q_20211110_2233.nids,
Level3_TWX_N0Q_20211110_2202.nids,
Level3_TWX_N0Q_20211110_2255.nids,
Level3_TWX_N0Q_20211110_2300.nids,
Level3_TWX_N0Q_20211110_2241.nids,
Level3_TWX_N0Q_20211110_2223.nids,
Level3_TWX_N0Q_20211110_2212.nids,
Level3_TWX_N0Q_20211110_2245.nids,
Level3_TWX_N0Q_20211110_2216.nids,
Level3_TWX_N0Q_20211110_2240.nids,
Level3_TWX_N0Q_20211110_2258.nids,
Level3_TWX_N0Q_20211110_2226.nids,
Level3_TWX_N0Q_20211110_2250.nids,
Level3_TWX_N0Q_20211110_2232.nids,
Level3_TWX_N0Q_20211110_2248.nids,
Level3_TWX_N0Q_20211110_2207.nids,
Level3_TWX_N0Q_20211110_2236.nids,
Level3_TWX_N0Q_20211110_2238.nids,
Level3_TWX_N0Q_20211110_2209.nids,
Level3_TWX_N0Q_20211110_2211.nids,
Level3_TWX_N0Q_20211110_2246.nids,
Level3_TWX_N0Q_20211110_2228.nids,
Level3_TWX_N0Q_20211110_2252.nids,
Level3_TWX_N0Q_20211110_2219.nids,
Level3_TWX_N0Q_20211110_2230.nids,
Level3_TWX_N0Q_20211110_2256.nids,
Level3_TWX_N0Q_20211110_2205.nids,
Level3_TWX_N0Q_20211110_2218.nids,
Level3_TWX_N0Q_20211110_2253.nids,
Level3_TWX_N0Q_20211110_2200.nids,
Level3_TWX_N0Q_20211110_2204.nids,
Level3_TWX_N0Q_20211110_2235.nids,
Level3_TWX_N0Q_20211110_2243.nids,
Level3_TWX_N0Q_20211110_2221.nids,
Level3_TWX_N0Q_20211110_2214.nids,
Level3_TWX_N0Q_20211110_2225.nids]将.sort()添加到列表末尾会产生以下错误:
TypeError: '<' not supported between instances of 'Dataset' and 'Dataset'有没有办法对生成的TDS目录进行排序,以便馈送到matplotlib.animation.FuncAnimation等资源中?
干杯-谢谢,
帐单
发布于 2021-11-11 17:51:28
您可以改用catalog.datasets中的数据集名称列表来成功排序。
...
for file in sorted(catalog.datasets):
ds = catalog.datasets[file].remote_access()
...发布于 2021-11-11 18:24:18
这里的解决方案不是对数据集列表中的值进行排序,而是对名称(键)进行排序:
datasets = list(catalog.datasets)
datasets.sort()或者更简单:
datasets = sorted(catalog.datasets)遍历排序顺序的规范方法是:
for name in sorted(catalog.datasets):
ds = catalog.datasets[name]https://stackoverflow.com/questions/69923496
复制相似问题