地铁/轨道数据处理展示:Tubemaps

jopen 9年前

Tubemaps是一个浏览器,NodeJs库和命令行工具用于处理轨道数据。

给定一个数据集,它将取得所有轨道/站点的关系。

地铁/轨道数据处理展示:Tubemaps

图片利用 Visualizing the tube in D3实现。

命令行工具

目前命令行只支持伦敦

$ tubemaps path  --from "Euston" --to "Hammersmith"  # Victoria Line: Euston to Warren Street  # Victoria Line: Warren Street to Oxford Circus  # Victoria Line: Oxford Circus to Green Park  # Victoria Line: Green Park to Victoria  # Victoria Line: Victoria to Sloane Square  # District Line: Sloane Square to South Kensington  # Piccadilly Line: South Kensington to Gloucester Road  # Piccadilly Line: Gloucester Road to Earl's Court  # District Line: Earl's Court to Barons Court  # Piccadilly Line: Barons Court to Hammersmith    $ tubemaps station "Euston" --london                      # Northern Line: Camden Town  # Victoria Line: King's Cross St. Pancras  # Northern Line: Mornington Crescent  # Victoria Line: Warren Street  # Victoria Line: King's Cross St. Pancras  # Victoria Line: Warren Street

NodeJS Library

var TubeMap = require('tubemaps').TubeMap;  var london = new TubeMap({    stations: csv.stations,    lines: csv.lines,    connections: csv.connections  });    // Find information about a station  var victoriaStation = london.getStationByName('Victoria');  // {conns:[{display_name: "Euston"}, ...], ..}    // Find information a line  var victoriaLine = london.getLineByName('Victoria Line');  // [station1, station2,..]    // Find all connections in a line  var conns = london.line(victoriaLine)  // [{station1: #euston, station2: #warrentStreet}]    // Find path between two stations  var conns = london.path(euston, victoria)  // [{station1: #euston, station2: #warrentStreet, line: #victoriaLine}]    // Find path between two stations in a line  var conns = london.path(euston, victoria, line)  // [{station1: #euston, station2: #warrentStreet, line: #victoriaLine}]

现有数据集

伦敦

var Maps = require('tubemaps/maps');    Maps("london", function(err, tube) {    var euston = tube.getStationByName("Euston");    var victoria = tube.getStationByName("Victoria");    console.log(tube.path(euston, victoria))  })

</div> </div>

项目主页:http://www.open-open.com/lib/view/home/1417058595893