как нарисовать аккорд с некоторыми конкретными данными CSV

Я сосредоточусь на примере https://github.com/sghall/d3-chord-diagrams/blob/master/trade-p.html и использует данные в формате csv, который находится здесь https://github.com/sghall/d3-chord-diagrams/blob/master/data/trade.csv что я хочу нарисовать хорду из тех же данных, но только когда importer1 === Panama. Может ли кто-нибудь помочь мне, я новичок в d3 и не знаю, как извлечь конкретные данные из файла csv, поскольку я пытаюсь, если (importer1 === Panama) {нарисовать аккорды....

}

но он не работает. заранее спасибо


person Sam    schedule 12.11.2015    source источник


Ответы (1)


Простые фильтры использования, как показано ниже, отфильтруют запись для Панамы.

 d3.csv('trade.csv', function (error, data) {
        var data = data.filter(function(d){ return d.importer1 == "Panama"});
        var mpr = chordMpr(data);

Рабочий код здесь

Надеюсь это поможет!

person Cyril Cherian    schedule 12.11.2015
comment
Миллион спасибо Кирилл. Оно работает :). Вы хоть представляете, что в текущем примере аккорд имеет форму круга? Что делать, если я хочу создать такой же аккорд в овальной форме. - person Sam; 12.11.2015
comment
Не знаю, как сделать эллипс - person Cyril Cherian; 13.11.2015
comment
Кирилл, я хотел спросить еще одну вещь: если я хочу создать два аккорда из одних и тех же данных, один d3.csv('trade.csv', function (error, data) { var data = data.filter(function(d){ return d.importer1 == Panama}); var mpr = chordMpr(data); а другой d3.csv('trade.csv', function (error, data) { var data = data.filter(function(d){ return d.importer1 == Пакистан}); var mpr = chordMpr(data); так как это работает, поскольку я пытаюсь поставить оператор if, но это не работает.заранее спасибо - person Sam; 13.11.2015
comment
@ Сэм, ты можешь сделать что-то вроде этого ryt var data = data.filter(function(d){ return (d.importer1 == Панама || d.importer1 == Пакистан)}); - person Cyril Cherian; 13.11.2015
comment
Мне нужно нарисовать две хорды :) с разными значениями importer1 на одной странице... Но спасибо за ваше предложение - person Sam; 13.11.2015