前言
公共交通服务是现代城市中不可或缺的一部分,而 GTFS(General Transit Feed Specification)是公共交通运输数据的标准协议。在前端中,通常需要使用 GTFS 数据进行开发和处理,而 @swiftstar/gtfs 就是一款专门用于处理 GTFS 数据的 npm 包。本文将详细介绍如何使用 @swiftstar/gtfs 进行 GTFS 数据处理。
安装
通过 npm 安装 @swiftstar/gtfs:
npm install @swiftstar/gtfs
使用方法
加载 GTFS 数据
@swiftstar/gtfs 加载 GTFS 数据需要指定数据文件的路径。可以通过本地路径、远程 URL 或者直接传递数据 JSON 对象的方式进行加载。
本地路径加载数据
const {loadGtfs} = require('@swiftstar/gtfs'); const gtfs = await loadGtfs('/path/to/gtfs.zip');
远程 URL 加载数据
const {loadGtfs} = require('@swiftstar/gtfs'); const gtfs = await loadGtfs('https://example.com/gtfs.zip');
直接传递数据 JSON 对象
const {loadGtfs} = require('@swiftstar/gtfs'); const data = { route: [/* 路线数据 */], stop: [/* 站点数据 */], /* 更多数据 */ }; const gtfs = await loadGtfs(data);
查询数据
@swiftstar/gtfs 提供了多种查询方法来获取 GTFS 数据。
const {getStops, getRoutes, getTrips, getAgencies} = require('@swiftstar/gtfs'); const stops = await getStops(gtfs); const routes = await getRoutes(gtfs, {query: {route_type: 0}}); const trips = await getTrips(gtfs, {order: ['start_time'], limit: 10}); const agencies = await getAgencies(gtfs);
处理数据
@swiftstar/gtfs 也提供了多种处理数据的方法。
const {getCalendarDates, getCalendar} = require('@swiftstar/gtfs'); const calendarDates = await getCalendarDates(gtfs, {query: {date: '20200101'}}); const calendar = await getCalendar(gtfs, {query: {service_id: '873'}});
示例代码
下面是一个完整的示例代码,用于查询符合条件的路线数据并输出。
-- -------------------- ---- ------- ----- ---------- ---------- - --------------------------- ----- ---- - ----- -- -- - ----- ---- - ----- ------------------------------ ----- ------ - ----- --------------- ------- ------------ ----- -------------------- -- -------展开代码
结语
本文简要介绍了 npm 包 @swiftstar/gtfs 的使用方法,以及如何加载 GTFS 数据、查询数据和处理数据。@swiftstar/gtfs 在处理 GTFS 数据方面非常方便和实用,希望本文对读者有所帮助。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6005669781e8991b448e2d04