koishi-plugin-xxcx-1

中文文档
0.0.10发布于 2026/11/04MITTypeScriptCommonJS零依赖

TC历史查询插件 · cx 按时刻查询活动系统,xrq/最佳 绘制单系统路径图,对照 出逐年 ACE 对比统计表(xrqa 数据 + NaTyphoon 存档)

原始使用文档
文档目录11 节
  1. 效果
  2. 指令
  3. 单系统路径图(xrq / 最佳)
  4. 命名查询
  5. 补录查询(无编号系统)
  6. 逐年 ACE 对照
  7. 判定规则
  8. 路径图(可选)
  9. 配置项
  10. 数据维护
  11. IBTrACS 补录(data-ibtracs/)

koishi-plugin-xxcx-1

npm

[自用]TC查询器

台风历史查询插件:cx 年.月.日.时 查出该时刻(世界时)正在活动的所有系统,输出编号、风速、性质、定位。

数据来源为 data/ 目录下的 xrqa 自评 b-deck(ATCF 格式),覆盖 1949—2026 共 78 年、2424 个系统 (bwp 2324、bsh 60、bcp 28、bep 10、bio 2;2026 年为部分年份)。 查询年份超出本地数据范围时(1851—1948、2027 起),cx 会自动从 NaTyphoon 存档下载该年份补齐 (archiveUrl 可配置;当前年份数据仍在更新,缓存 6 小时后自动刷新,历史年份长期缓存)。

另有 data-ibtracs/:IBTrACS 收录、但最佳路径存档没有的系统,从 1842 年起共 7125 个 (有编号 2265 个 + 无编号 4860 个),完整定位序列 308403 条。有编号的这批会一起进 对照 (与 data/ 按编号配对),无编号的只作查阅。其中另有 14 个南大西洋人工补录 (IBTrACS 与存档都没有,见「数据维护 · IBTrACS 补录」)。

效果

cx 2013.11.07.18
2013.11.07.18Z 共 2 个系统

1331W  185kt  超强台风(ST)  10.6°N 126.9°E
1330W  35kt  热带风暴(TS)  12.0°N 101.0°E

查询时刻不是 6 小时正点(如 15 时)时,取最接近的一次定位并标注实际定位时间:

cx 2024.09.15.15
2024.09.15.15Z 共 3 个系统

2414W  85kt  台风(TY)  30.5°N 124.6°E  @09.15.12
2412W  30kt  热带低压(TD)  22.1°N 82.9°E  @09.15.12
2415W  20kt  热带扰动(DB)  13.4°N 143.4°E  @09.15.12
注:@xx.xx.xx 表示该时刻无正点定位,取最接近的一次定位。

指令

指令说明
cx 2024.09.15.12查询该时刻存在的系统(世界时)
cx 2024.09.15省略小时,按 00 时处理
cx输出用法与数据范围
xrq wp162022用本地 xrqa 数据绘制单个系统的路径图
最佳 wp162022从 NaTyphoon 存档下载最佳路径并绘制路径图
xrq 13haiy按「年份后两位 + 名字前缀」查(2013 年 HAIYAN),大小写不敏感
最佳 13haiy同上,名字查询使用存档数据
命名 2013 wp列出 2013 年 WP 洋区所有系统编号与名字
对照 2013 wp对比该年该洋区 XRQA 与最佳路径的 ACE,输出统计表图
补录 2014mitag查询 IBTrACS 补录中无编号的系统(见「补录查询」)
补录 2014160N21120按 SID 直接定位,输出路径图与摘要

分隔符支持 .、-、/,月/日/时可省前导零(2024.9.5.0 等价于 2024.09.05.00)。

单系统路径图(xrq / 最佳)

参数支持两种写法:

  • 系统编号:洋区两位 + 编号两位 + 年份四位(wp162022 = 2022 年 WP 洋区 16 号,即文件名 bwp162022 去掉 b)
  • 年份 + 名字前缀:13haiy(两位年份,13 → 2013)或 2013haiy(四位年份),不区分大小写;两位年份不晚于今年后两位算 20xx,否则算 19xx(98zeb → 1998)

名字查询会先列出/下载该年份的存档:查不到会提示改用完整编号;匹配到多个会列出候选(最多 10 个)并要求补充字母或用完整编号。两个指令输出格式一致:

bwp312013 Haiyan 最佳路径
定位:37 条,2013.11.02.06Z — 2013.11.11.06Z
持续:9天0时,路径:6728km
巅峰:170kt 超强台风(ST) @ 2013.11.07.12Z
最低气压:895hPa
ACE:38.19
→ 图片:该系统全路径图(发送成功后自动删除)

bwp312013 Haiyan xrqa路径
定位:48 条,2013.11.01.00Z — 2013.11.12.00Z
持续:11天0时,路径:7732km
巅峰:185kt 超强台风(ST) @ 2013.11.07.18Z
最低气压:数据未提供
ACE:38.46

两个数据源:

  • xrq:插件自带 xrqa b-deck(data/,即原压缩包数据),1949—2026,气压字段缺失时显示「数据未提供」。本地文件没有名字字段,会按同编号向存档查一次名字;查不到显示 Noname。
  • 最佳:NaTyphoon 存档(1851—2026),按需下载 b<洋区><编号><年份>.dat 到临时目录,绘制后连同图片一起删除。名字取文件中最后一次非占位名(INVEST、THIRTYONE 之类不算),全程没有名字显示 Nameless。

名字统一为首字母大写(HAIYAN → Haiyan)。存档同一时次可能拆成多行(34/50/64kt 风圈各一行),摘要按时间去重后再统计定位数与 ACE。

ACE 规则:仅统计 00/06/12/18 正点、TS / TY / ST / STS / TC / HU / MH 阶段且风速 ≥35kt 的定位,Σ (v/100)²(= v²×10⁻⁴,单位 ×10⁴ kt²)。 本地数据缺失时 xrq 会提示改用 最佳,反之亦然。绘制流程与 drawImage 相同(仅 Windows)。

命名查询

命名 <年份> <洋区代号> 列出该年份、该洋区的全部系统编号与名字。年份支持四位或两位(13 → 2013),洋区代号不区分大小写:

命名 2013 wp

2013 年 WP(西北太平洋)共 33 个系统

01W  Sonamu
02W  Shanshan
...
  • 洋区代号:WP 西北太平洋、EP 东北太平洋、CP 中太平洋、AL 北大西洋、IO 北印度洋、SH 南半球、SL 南大西洋
  • 每个代号都收习惯写法:WPAC / EPAC / CPAC / NATL / SATL / NIO,不区分大小写,所以 对照 2019 satl 与 对照 2019 sl 等价
  • 南半球可按责任区再分三段:SWIO 西南印度洋(30—90°E)、AUS 澳洲区(90—160°E)、SPAC 南太平洋(160—240°E),简写 sw / si / au / sp 同样可用
  • 数据来自 NaTyphoon 存档(会走整年缓存),未命名系统显示 Nameless(INVEST 以及被字段长度截断的英文数字占位名都算未命名)
  • IBTrACS 补录一并列出:IBTrACS 有名字、但存档没收录的系统(编号类 458 个 + 无编号 155 个有名字) 也出现在表里——编号类按编号插进主列表并标 ※,无编号的单独列 SID(≈bwp… 表示 XRQA 另有 扩展编号)。同一系统只出现一次:编号类按编号去重,无编号的与存档轨迹做时空重合 (±6h、≤150km,重合 ≥50% 视为同一场)
  • 该年没有指定洋区时,会列出这一年的可用洋区代号

补录查询(无编号系统)

data-ibtracs/sid/ 里的系统没有 01W 这类编号,xrq / 最佳 的编号查询摸不到,单独用 补录 指令查。查询写法与 xrq 13haiy 的风格一致(也可用空格分隔):

补录 2014160N21120     按 SID 直接定位,输出路径图与摘要
补录 2014              列出该年全部无编号系统(SID、洋区、名字、定位条数)
补录 2014wp            该年 + 洋区过滤
补录 2014mitag         该年 + 名字前缀;唯一命中时直接画图,多个时列出让用户补充
  • SID 是 IBTrACS 的 13 位编号(4 位年份 + 3 位序号 + 半球 + 5 位位置编码),不区分大小写
  • 两字母过滤词先按洋区代号理解(al、io 这些前缀撞常见名字时洋区优先),按名字查请多打几个字母
  • 名字来自生成补录数据时的 IBTrACS NAME 列(存在 .sync.json 清单里)
  • xrqa 交叉对应:xrqa 收录的JTWC 没编号的系统,清单里以 ≈bwp602014 标注,单系统摘要末尾会提示 xrq bwp602014 可看再分析路径
  • 摘要格式与 xrq / 最佳 相同,标题注明 IBTrACS 补录;有编号的补录系统(1232 + 1033 个) 存在 data-ibtracs/<年份>/ 下,格式与 data/ 一致,暂无专门指令

逐年 ACE 对照

对照 <年份> <洋区代号> 把该年该洋区的两套数据按系统编号配对,输出一张统计表图:

对照 2013 wp
2013 年 WP(西北太平洋) ACE 对照
共 35 个系统 · XRQA 335.39 / 最佳 274.21 · 差值 +61.18
→ 图片:mth | ID | Name | 最佳(风速/气压/ACE) | XRQA(风速/气压/ACE) | +/-
  • 无会话或绘制失败时退回等宽文本表

跨洋区的系统按经纬分段统计:

  • 本洋区编号的系统只统计落在本洋区范围内的定位;
  • 反过来,别的洋区编号的系统进入本洋区的那一段计入本洋区。
  • 这类行单独列出,编号仍是原编号(01C),名字后面标 (WP段),只计本洋区内的定位;
  • 七个洋区都按经纬边界判定,经度统一折算到 0—360:WP 半岛分界—180°E、CP 180—220°E、EP 220°E—陆桥、IO 30°E—半岛分界、SH 赤道以南 0—300°E、SL 赤道以南 300—360°E、AL 陆桥—0°且严格取赤道以北(南半球另有 SWIO / AUS / SPAC 三个分区,见下一条);
  • AL 与 SL 严格按赤道分界,两者不重叠:赤道以南一律归 SL,AL 一个点都不留;赤道本身判给南半球(与 SH / SL 的 latMax: 0 一致)。这条规则的代价是 IBTrACS 的历史遗留要单独处理——它在 2010 年才有 SL 编码,此前的南大西洋系统一律挂在 AL 下。2004 年 3 月的卡塔琳娜(Catarina)就是 AL 50,23 个定位全在 28.5—29.6°S、41.8—50.1°W,峰值 75kt、最低 981hPa,是南大西洋唯一被广泛承认的飓风。这类文件按首个定位重新判归属:赤道以南的算 SL 本区系统,赤道以北的仍归 AL。所以 对照 2004 sl 里它是 50L Nameless、ACE 4.77,对照 2004 al 里不再出现。编号仍沿用 50L(与 b-deck 文件名同源,SL 编号的后缀是 Q,2010 / 2011 的 Anita 与 Arani 是 50Q),所以 SL 表里会同时看到 50L 与 50Q 两种后缀;
  • 南大西洋在 ATCF 里有三种写法,都指同一个洋区:al(2004 的 Catarina,bal502004)、sl(2010 / 2011 的 Anita 与 Arani,bsl502010 / bsl502011)、ls(2019 起的巴西海军编号系统,bls012019)。ls 与 sl 字母顺序相反,不特殊处理的话它既进不了 SL 也进不了 AL,会整个消失;现在 ls 与 al 一样按首个定位判归属,对照 2019 ls 会归一到 sl 表,编号后缀统一显示 Q;
  • IBTrACS v04r01 的南大西洋列表(ibtracs.SA.list)只收了 2004、2010、2011 三个系统,之后巴西海军水文中心(CHM)命名的十几个热带 / 亚热带系统一个都没进。data-ibtracs/ 下按年份人工补了 14 个(2015—2026,文件名 blsNNYYYY.txt),路径来自 Steve Young 的月度路径表(australiasevereweather.com.au/cyclones/<年>/trak<两位年><两位月>.htm 的 S. ATLANTIC 一节,以 NRL / NCEP-NCAR 再分析重建为主、KNES 提供逐 6 小时 Dvorak 定强)。编号沿用 CHM 的 TD# 写成 ATCF 形式(b + ls + 两位序号 + 四位年份),年内按生成先后排:2015 与 2021 各有 01Q / 02Q / 03Q,2019 是 01Q Iba 与 02Q Jaguar,其余年份各一个。名字在 src/names.ts 的 SUPPLEMENT_NAMES 里单独维护(不由 gen-names.py 生成),所以表里显示 Iba、Raoni、Akará 而不是 Nameless;
  • 补录口径三条:亚热带系统照收,ACE 记 0(SS / SD 不在 ACE 计入集合里,Potira 33 个定位、峰值 40kt,ACE 仍是 0);没有风速的只保留路径,风速列留空、不补推测值(Kurumí、Yakecan、2023 的 01Q 只有气压,ACE 自然是 0);本区 0 分的行照常列出,不因为「本区 ACE 是 0」删行,否则系统数会少一个。2026 年 2 月那一节里另有一个未命名的 DEPRESSION,位置与 Caiobá 相近、疑为同一事件的另一版分析,没有收录;
  • 站点只发布 1—6 月的月报,7—12 月几乎全 404,所以下半年生成的那批(Deni 2016-11、Eçaí 2016-12、Guará 2017-12、Oquira 2020-12、Ubá 2021-11、Biguá 2024-12)补不到;Mani 2020-06 虽在 1—6 月内,但那几期月报的南大西洋一节是空的。这批只能等 IBTrACS 后续版本收录。重新生成用 python tools/gen-satl.py(--only=2016,2019 只刷指定年份,--dry 只打印不写盘),文件首行是 # 注释,tools/sync-ibtracs.py 重跑时会跳过、不覆盖也不删;
  • WP 与 IO 之间不按 100°E 一刀切:马来半岛在 6—12°N 收窄到 98.5—99.5°E,泰国湾一侧(东)属西太、安达曼一侧(西)属印度洋,100°E 直线会把泰国湾的系统错划给印度洋。分界取半岛山脊中线(0°N 103.5°E → 2°N 103.1°E → 4°N 102°E → 6°N 99.95°E → 8°N 98.95°E → 10°N 98.75°E → 12°N 99.25°E → 14°N 100°E,14°N 以北回到 100°E),线以东算 WP、以西算 IO。2001 年的 32W 画眉在马六甲海峡内(1.6°N 103.0°E)转 IO,2018 年的 36W 帕布到 8.8°N 98.5°E 越过攀牙湾才转 IO,而它在泰国湾 8.3°N 99.8°E 的 40kt 仍算西太;
  • AL 与 EP 共用中美洲陆桥,不能只按经度划:德州登陆点(28°N 97°W)与东太平洋的 97°W 是同一条经线,中间只隔墨西哥陆地。分界取陆桥中线(0°N 80.5°W → 8°N 80°W → 10°N 84°W → 16°N 91°W → 18°N 94.8°W → 20°N 100.5°W → 25°N 103.5°W → 30°N 105°W),线以西算 EP,以东算加勒比海 / 墨西哥湾(AL)。大西洋系统翻过地峡进入太平洋的(1876 的 04L 带一条 1.36 的 EP 段)会多出一行 EP 段,反向同理;
  • 只有相邻洋区之间才可能互相串段:WP ↔ CP、CP ↔ EP、IO ↔ WP、EP ↔ AL。EP 编号的系统可以穿 CP 进入 WP,北印度洋的系统也有从西太生成的(1978 年的 02I、1999 年的 05I 各带一条 WP 段,后者 0.61,其中 11.5°N 99.3°E 的 45kt 定位按半岛分界仍算西太),这些分段同样单独列出;
  • 南半球按 WMO 责任区拆成三段,界线是 30 / 90 / 160 / 240°E:SWIO 西南印度洋(30—90°E,RSMC 留尼汪)、AUS 澳洲区(90—160°E,达尔文 / 珀斯 / 布里斯班)、SPAC 南太平洋(160°E—120°W,楠迪 + 惠灵顿)。SH 仍是三段的合计,旧写法照用。南半球的数据文件都叫 bsh,没有分区编号,所以归属看轨迹首个定位:首个定位落在本区的按本区系统列(正常行),从别的分区漂进来的按分段行标 (AUS段) 之类,两边都不会重复计算。
  • 同一场台风偶尔会挂两个洋区编号:如 2025 年的 34W Senyar 与 04I Senyar。这种情况下分段行会与本洋区行重复,只保留本洋区那一行,它缺的那一侧从重复文件补过去。
  • 还有一种相反的情况:同一系统被拆成两个编号、两段轨迹首尾相接但不重叠。这种按一条统计:ACE 与定位数相加、起止取并集、峰值取大,清单在 src/compare.ts 的 SYSTEM_SPLITS 里维护,只登记人工确认过的,不做自动判定。

版式按数据情况自动切换,共三种:

情况版式说明
两套数据都有both完整六列,带 +/- 差值列
本地 xrqa 整侧没有该洋区bestOnly只画最佳一组,表宽 530,表底注明原因
存档整侧没有该洋区xrqOnly只画 XRQA 一组,表底注明原因

表宽随名字列自适应:名字列默认 172px,遇到 Benjamine (SWIO段) 这种「名字 + 段标」比列宽长时按实测像素加宽(上限 248px,再长交给省略号),整张表跟着变宽,单侧版式因此可能宽于 530。标题在 27px 下放不下时逐级缩到 19px,保证整行显示;单元格一律单行,不会折成两行挤在固定行高里。

只有部分系统缺一侧时保持 both 版式,每一处缺失都单独标出来:

  • 缺一侧的编号后面加 *(两源都缺的系统也加,缺的是哪一侧看该侧的 -)
  • 该侧整组单元格铺浅灰底,和完整行区分开

差值一律按两源都有的系统计算。

xrqa 没有名字字段,名字优先取存档 的第 28 列;1999—2000 的 11 列短格式和 1998 及以前的 9 列格式没有名字列,改用 src/names.ts,来自 IBTrACS v04r01 , 覆盖 AL / EP / CP / WP / IO / SH / SL 七个洋区,共 5604 个编号。这张兜底表在四条路径上都生效: 对照表、命名 列表、按名字查询、单系统摘要 (无名低压仍显示 Nameless)。

IBTrACS 的 ATCF 编号与存档文件名同源(SH021979 ↔ bsh021979),南半球按季节年编号, 与存档没有错位。

IBTrACS 把合并过的系统记成 A:B(如 PAT:RUTH、BULBUL:MATMO),这类记录要分两种情况处理:

  • 一个组合对应多个 ATCF 编号时按编号拆开,各自取属于自己的名字。
  • 只对应一个编号时才当作别名:主名在前,另一个名字放括号,显示成 Bulbul (Matmo)。

极少数情况下一个 SID 对应两个 ATCF 编号,于是两个编号会同名。

性质缺失或为 XX 时 ACE 只能退化为按风速判定(≥35kt 且落在 00/06/12/18 正点)。

判定规则

  • 存在:查询时刻落在一个系统路径的首条与末条记录之间(含端点)。
  • 快照:取距离该时刻最近的一条定位,并列时取较早者。
  • 跨年:同时扫描查询年与上一年,年初仍存活的系统不会被漏掉。
  • 输出按风速从高到低排序,超过 maxResults 只显示风速最高的若干条。

路径图(可选)

打开配置项 drawImage 后,每次查询会额外用 Typhoon4 把查到的系统画在同一张路径图上并发送:

cx 2013.11.07.18
→ 文本:2013.11.07.18Z 共 2 个系统 …
→ 图片:一张含 1331W 与 1330W 全路径的 WPAC 区域图

工作方式:

  1. 把本次要画的 b-deck 文件复制到独立临时目录,改写 Settings.ini 的 Dir 指向它(同时关掉图例)
  2. 启动 Typhoon4.exe,通过窗口消息触发「打开文件」→「全选」→「确定」,程序自动开始绘画
  3. 轮询标题栏等待处理完成,触发「保存路径图」并写入文件名
  4. 关闭程序、还原 Settings.ini、清理临时目录
  5. 用 GDI+ 把成图等比缩放到 imageWidth 宽(原始成图宽 5500–11000px、10–30MB,不适合直接发送)
  6. 文本与图片发送完成后删除临时图片;发送失败则保留并在日志中给出路径

启用条件:

  • 仅 Windows(依赖窗口消息与 GDI+)
  • 本机已安装 Typhoon4(typhoon4Dir 留空时会在桌面、用户目录等位置有限深度搜索 Typhoon4.exe,结果缓存),可从https://www.natyphoon.top/Download/#Typhoon4下载
  • koffi 依赖可正常加载(若没有可以手动安装)

绘制期间会短暂弹出并自动操作 Typhoon4 窗口,不要同时手动操作该窗口;多次查询的绘制任务会自动串行排队。

配置项

配置类型默认说明
dataDirstring插件内 data/b-deck 数据目录(内含年份子文件夹)
windUnitkt / ms / bothkt风速单位
minWindKtnumber0低于该风速的系统不展示
includeInvestbooleantrue是否包含 60—69 号扰动临时编号
showPositionbooleantrue是否附带定位(纬度 经度)
showSnapshotTimebooleantrue快照时间与查询时刻不同步时是否标注 @
maxResultsnumber60单次最多展示数量
drawImagebooleanfalse打开后额外绘制查到的系统的路径图并发送
typhoon4Dirstring空(自动探测)Typhoon4 程序目录(含 Typhoon4.exe、Settings.ini)
mapPathstring空(沿用 Settings.ini)地形图 png 路径
imageWidthnumber1440发送前缩放到的宽度(像素),0 表示不缩放
drawTimeoutnumber300单张路径图绘制超时(秒)
archiveUrlstringdapiya 存档地址「最佳」指令使用的数据存档地址

数据维护

data/ 下按年份分文件夹存放 b<洋区><编号><年份>.txt(ATCF b-deck,来自于xrq自评):

data/
  1949/bwp011949.txt …
  1979/bsh011979.txt …
  2026/bwp012026.txt …

CyanideCN/xrqa_bdeck_data,本地统一转成 .txt + LF。同步用仓库自带脚本:

python tools/sync-xrqa.py --check   # 只看差异
python tools/sync-xrqa.py           # 浅克隆上游并写入 data/
python tools/sync-xrqa.py --from <已克隆目录>   # 不联网,离线同步

脚本只增改不删; 同步完把「系统时间 + 上游 commit + 本次新增/更新数量」写进 data/.sync.json。

更新数据时直接替换对应年份文件夹即可,插件按年份目录的修改时间自动失效缓存,无需重启。 年份范围由 data/ 内实际存在的文件夹决定,指令中的年份超出范围会给出提示。

IBTrACS 补录(data-ibtracs/)

这里补两类「IBTrACS 有、最佳路径存档没有」的系统。

一、有 ATCF 编号、存档没有的 2265 个。 拿 IBTrACS 的 ATCF 编号去对存档目录页的文件清单 (const FN = [...]),1949—2026 年里有 1232 个编号存档没有收录:SH 754、IO 393、WP 65、EP 10、 AL 6、CP 2、SL 2。存档本身从 1949 年才开始,而 IBTrACS 对更早的历史系统回填了 ATCF 式编号 (最早 1851 年),这些编号不可能出现在存档清单里,全部算缺——1949 年前共 1033 个 (AL 790、WP 94、SH 82、IO 67),两类合计 2265 个。 格式与 data/ 完全一致(11 列 b-deck),只是在第 5 列把来源写成 IBTR

data-ibtracs/
  1967/bwp371967.txt
  1973/bal181973.txt
  2015/bls012015.txt           # 人工补录(首行 # 注释),IBTrACS 没收录的南大西洋系统
  2026/bls012026.txt
  sid/1971/1971351S17176.txt   # 没有 ATCF 编号的系统,文件名用 SID
  .sync.json                   # 生成时间、来源、每个系统的定位条数

人工补录(14 个,全是南大西洋)。 极少数系统两个源都没有,只能从别处找路径。 IBTrACS v04r01 的 SA 列表只有 2004 / 2010 / 2011 三个,2015 年之后 CHM 命名的系统一个都没收, 路径由 tools/gen-satl.py 从 Steve Young 的月度路径表抓下来写成 b-deck(编号与取舍见 「逐年 ACE 对照」一节)。这类文件首行写 # 注释说明来源与取舍,tools/sync-ibtracs.py 清理旧年份目录时会跳过它们(只删首行不是 # 的 .txt),所以重跑同步不会丢。它们也不计入 .sync.json 的 systems 数(清单里是 2265,磁盘上的 .txt 比它多这 14 个),名字走 src/names.ts 的 SUPPLEMENT_NAMES 而不是生成的 STORM_NAMES。

二、没有 ATCF 编号的 4860 个。 IBTrACS 全量 13631 个系统里,8636 个带 ATCF 编号,另外 4995 个 没有:3993 个在 1949 年以前,1002 个落在 1949—2026。1949 起的这批去掉 135 个属于别的系统的碎片 (见下),实际 867 个;连同 1949 年前的 3993 个,共 4860 个,合计 190652 条定位。

这 4860 个不进年份目录——它们没有编号,所以单独放在 sid/<年份>/<SID>.txt,第 2 列编号写 00,其余字段与上面相同。

碎片指的是 IBTrACS 把一个台风拆成几段 SID 的情况 按 SID 判「无编号」会把这类续报段当成独立系统。脚本用时空重叠剔除:某个无编号 SID 有 30% 以上的定位点落在另一个有编号 SID 的轨迹 100km 内(同一天前后一天),就判为碎片。

1949 年前的 3993 个来自 HURDAT 回算与地方志整理,只有位置没有强度的占多数。

对只有位置没有风速的系统,生成时逐行按下面的顺序回退,两边独立判断, 都没有就写 0 :

风速  USA_WIND → WMO_WIND → CMA_WIND → TOKYO_WIND → HKO_WIND → KMA_WIND
      → NEWDELHI_WIND → REUNION_WIND → BOM_WIND
气压  USA_PRES → WMO_PRES → CMA_PRES → TOKYO_PRES → HKO_PRES → KMA_PRES
      → NEWDELHI_PRES → REUNION_PRES → BOM_PRES

这份数据不参与对照表的统计,只作为备用数据。

版本与发布记录

koishi-plugin-xxcx-1 共发布 9 个版本,首次发布于 2026/09/21;过去 12 个月发布了 9 个版本。

版本发布日期距今
0.0.10latest2026/11/041 天前
0.0.92026/11/041 天前
0.0.82026/11/041 天前
0.0.72026/11/041 天前
0.0.62026/11/031 天前
0.0.52026/11/031 天前

关于 koishi-plugin-xxcx-1 的常见问题

koishi-plugin-xxcx-1 是什么?

TC历史查询插件 · cx 按时刻查询活动系统,xrq/最佳 绘制单系统路径图,对照 出逐年 ACE 对比统计表(xrqa 数据 + NaTyphoon 存档)

如何安装 koishi-plugin-xxcx-1?

在项目目录运行 npm install koishi-plugin-xxcx-1,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:koishi(^4.18.7)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

koishi-plugin-xxcx-1 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

koishi-plugin-xxcx-1 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

koishi-plugin-xxcx-1 可以商用吗?

koishi-plugin-xxcx-1 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

koishi-plugin-xxcx-1 还在维护吗?

最新版本 0.0.10 发布于 2026/11/04(1 天前);至今共发布 9 个版本,其中过去 12 个月发布了 9 个;首次发布于 2026/09/21。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。