Javascript-форум (https://javascript.ru/forum/)
-   Ваши сайты и скрипты (https://javascript.ru/forum/project/)
-   -   Интерактивный редактор графиков функций (https://javascript.ru/forum/project/5271-interaktivnyjj-redaktor-grafikov-funkcijj.html)

Иван Карев 01.10.2009 15:38

Интерактивный редактор графиков функций
 
Вложений: 2
Примерно полгода назад у меня возникла необходимость использования полноценной графики в вебе. Пришлось просмотреть и попробовать много библиотек, реализующих векторную и растровую графику средствами html. Тогда же, чтобы получше это все усвоить и занять себя в свободное время, я начал делать редактор графиков, который в недавнем времени приобрел вполне законченный вид.
Что в нем интересного:
- используется векторная графика на основе svg
- интерактивное изменение масштаба, а так же координат просматриваемого окна
- возможность использования сложных функций
- управление цветом каждого графика
- восстановление любого состояния по параметрам url

Как его можно применять:
- в любых образовательных целях
- сохранение нужных графиков с возможностью посмотреть их потом или показать кому-то еще
- использование в оффлайн режиме

Использование:
В поле ввода пишите функциональное выражение от переменной x. Значения перечитываются при нажатии кнопки "Нарисовать" или клавиши enter. Если функция задана неверно, она просто не будет отображаться.
В любой из последующих функций можно использовать имена предыдущих. Так же можно скрывать ранее нарисованные графики, при изменении координат значения скрытых графиков не пересчитываются.
Перед сложными вычислениями (высокая детализация графиков или большое их количество) советую сначала убирать детализацию до минимума, а при получении нужных масштабов и позиции окна, восстанавливать прежнее значение.
Любое состояние окна можно запомнить, нажав клавишу "Сохранить url" и сохранив измененный url, например, в закладках браузера.

Пример работы:
http://svgfuncs.narod.ru/index.html#...(x)))#ff5100#t

смотреть лучше всего в chrome

B~Vladi 01.10.2009 15:46

Т.е. на сайт прикрутить нельзя?! На магазин какой-нить коммерческий...

Иван Карев 01.10.2009 15:50

Да я вот и хотел тут разместить :)

B~Vladi 01.10.2009 15:54

Ой... Ну вы хоть мануал на русском прикрутили чтоли:)
А вообще - первое впечатление - это делали не вы, а наши братья забугорные:(
Зачем ссылки сверху?! Что за реклама?!

Иван Карев 01.10.2009 16:15

2B~Vladi:
Делал я) От мануалов как раз хотел избавиться. Когда будет демка, просто помещу несколько линков, в которых будут видны все возможности.
Тексты можно перевести:)
А сверху не реклама, а ссылки на используемые библиотеки.

B~Vladi 01.10.2009 16:21

Понятно. Просто всё на английском там... Код какой-то... вобщем незнаю с чего даже начинать тестить:)
И ещё не понятно, почему перекрестие движется противоположенно движению мыши... Так надо?!

Иван Карев 01.10.2009 16:39

2B~Vladi:
Это оси координат; мне такое движение показалось более удобным.

B~Vladi 01.10.2009 16:48

Цитата:

Сообщение от Иван Карев
Это оси координат; мне такое движение показалось более удобным.

Вам виднее. Не приведёте небольшой мануал?! А то я уже и не знаю, куда ткнуть, чтоб хоть что-то там появилось...:-?

Иван Карев 01.10.2009 17:02

Русская версия уже выложена в верхнем посте.
Все просто - в поле ввода пишите функциональное выражение от переменной x. Значения перечитываются при нажатии кнопки "Нарисовать" или клавиши enter. Если функция задана неверно, она просто не будет отображаться.
В любой из последующих функций можно использовать имена предыдущих. Так же можно скрывать ранее нарисованные графики, при изменении координат значения скрытых графиков не пересчитываются.
Перед сложными вычислениями (высокая детализация графиков или большое их количество) советую сначала убирать детализацию до минимума, а при получении нужных масштабов и позиции окна, восстанавливать прежнее значение.


Часовой пояс GMT +3, время: 07:27.