Библиотека JavaScript, которая представляет интерактивную временную шкалу с непропорциональными значениями оси?

Мне нужно реализовать представление временной шкалы в приложении iOS. Я планирую использовать компонент JavaScript, вложенный в веб-представление, так как считаю, что это будет лучше, чем рисовать временную шкалу изначально. Я нашел эти библиотеки до сих пор:

http://visjs.org/docs/timeline.html
https://almende.github.io/chap-links-library/timeline.html

Они выглядят довольно красиво, и кажется многообещающим, что любой из них выполнит большую часть необходимой работы. Но у меня есть одно конкретное требование, которое я не смог найти ни в одной библиотеке временной шкалы:

Значения оси времени должны быть непропорциональны (значения времени рядом с центром должны быть более разбросаны, чем значения рядом с концами текущего представления временной шкалы).

http://oi61.tinypic.com/2hg70ib.jpg
Вы можете посмотреть на образ, что годы на оси далеко не равноотстоят друг от друга.

Кто-нибудь знает какую-нибудь библиотеку JavaScript или, что еще лучше, нативную для iOS или имеет какие-либо модификации существующей библиотеки, предлагающей этот тип функциональности?


person Jovan Jovanovski    schedule 06.01.2015    source источник


Ответы (1)


Используя временную шкалу библиотеки chap-links, вы можете легко переопределить линейные функции Timeline.screenToTime и Timeline.timeToScreen (и, возможно, Timeline.recalcConversion) своей собственной нелинейной функцией (например, обтекание с помощью x^2 вокруг центра окна). См. код здесь: https://github.com/almende/chap-links-library/blob/master/js/src/timeline/timeline.js#L2506-L2542

Обратите внимание, что существует преемник библиотеки chap-links: vis.js. В этой библиотеке вам придется переопределить функции DateUtil.toScreen и DateUtil.toTime: https://github.com/almende/vis/blob/master/lib/timeline/DateUtil.js#L275-L324

person Jos de Jong    schedule 07.01.2015