← Архив: Common Lisp

понадобилось нарисовать двухмерный график несложный

Author: · 08.03.2016 15:29
· original author: dima0905
с библиотеками - беда. SIMPLOT  http://75.172.70.180:4446/simplot/user/simplot.htmlне захотела в Windows работать. cl-gd-glue.dll не загружается error 193
MAXIMA мне кажется избыточной
cl-2d ваще пропала
какие-то гуи-гтк мне непонятные. хоть в екселе рисуй
· original author: den73
Я пользовался adw-charting, правда пришлось кое-что пропатчить и в библиотеке графиков,
и в том, на что она опирается.
Если у тебя винда, можешь скачать мою программу и в ней попробовать "на живую".
Программа не требует установки - распаковал архив и работай на здоровье. Там же все патченные исходники.
https://bitbucket.org/budden/cl-stirling-engine
· original author: den73
PS. И там же целая IDE на tcl/tk, так что если у тебя есть решение для tcl/tk, то можно приделать его к этой программе.
· original author: LinkFly
Может если http://www.xach.com/lisp/vecto/ заработает в винде, то через неё стоит нарисовать?
· original author: dima0905
 у меня график чуть сложнее чем годовой курс доллара. Мне векторы не нужны.
· original author: den73
Выглядит вот так:

По-моему, сделано тоже на базе vecto.
· original author: motopeh
Есть cl-plplot - низкоуровневая система работает, для неё примеры есть.
Когда я его щупал выскоуровневая система барахлила и я в неё не
въехал. Для быстрой штамповки графиков в виде pdf и растра выбор неплохой.
Вроде в библиотеке просматриваются функции интерактива, но что рабочее есть -
убого.
Если интерактив нужен - приноровился к gnuplot-скриптингу. На нём я эти графики
крутил и вертел у себя и для себя - обычно знаю с чем работаю и свистоперделки
ненужны => gnuplot-скрипты получаются тривиальными и пишутся в основном
гуглежом по кусочкам.
Очень редко берусь за matplotlib когда функций не хватало. Бывал даже особо тяжёлый
случай - писал сервер, работающий с inkscape через плагин на бетоне, считывал
функции кривых.
Есть ещё cl-cairo2 - вроде с ним тоже можно графические файлы штамповать.
Здесь http://lisper.ru/forum/thread/1257 я даже успешно на экране рисовал. Нормальную
интерактивную систему только ниасилил.
· original author: dima0905
plplot требует libplplotd.dll. Я нашел какой-то, но cffi не может его загрузить. 193 ошибка
· original author: motopeh
Ядро cl-plplot это биндинг к plplot. Нашёл ты именно это?
· original author: dima0905
я думал будет готовый пакет из коробки. Я уже начинаю забывать, что и зачем хотел нарисовать. Т.е. мне придется устанавливать MSVC  и делать dll-ки. А "чисто" на лиспе нет рисовалки графиков? Ведь все равно в файл выводится, а не на устройство. 
· original author: motopeh
Тогда уж проще линукс поставить https://packages.debian.org/source/wheezy/plplot.
cl-pdf вроде на чистом лиспе написан.
· original author: den73
У меня всё на чистом лиспе, но похоже меня все игнорируют :)
· original author: dima0905
Отсюда  безопасно будет загрузить GD? Рискнуть запустить .exe или попытаться  скомпилировать самому (MSVC 2013 вроде установился)?
· original author: motopeh
sourceforge известный распространитель свободного софта с раздачей бинарников для винды.
По части поставить СПО-бинарник оттуда на винду я ему по этой части доверяю, хотя, наверно,
 потому что редко пользуюсь виндой и я не сильно рискую если она у меня заразится или поломается.
Сообщество за ним следит и в последнее время у него репутация ухудшилась:
https://www.linux.org.ru/tag/sourceforge
Если напорешься на малварь, то напиши новость на сайт пожалуйста - там всегда рады вой поднять
по этому поводу. Для этого регистрироваться там не надо, вроде.
Несмотря на это для меня сорсфорж всё ещё значительно выше обыкновенных файлопомоек
с варезом и заразной малварью. Как говорится: "Они гавнюки, но они наши гавнюки"... пока ещё.
Ну вот известная в нашем сообществе проект maxima хостится там и раздаёт бинарники.
· original author: dima0905
пока не теряю надежды собрать самоve dll-ку 
· original author: dmitrys99
Я вот тоже не понимаю, чего хочешь добиться?
Если тебе нужен график в PDF, то очень хорошо работает CL-PDF.
Если тебе нужен график в GUI, тогда используй те либы, что предоставляет GUI (Cairo, например).
CL-PDF вообще мегавещь, особенно если понимаешь, как PDF устроен.
Если у тебя графики сводятся к кривым Безье, вообще красота. Если вдруг нет,
своди к кусочечным сплайнам и рисуй что хочешь.
· original author: dima0905
исходный график дискретный, типа, температура за окном . Искомый график - фурье-образ. Интерактив пока не предусматривается, максимум - скролить по горизонтали. SIMPLOT мне понравился больше всего. Но он требует GD.
Основная проблема - CFFI не хочет загружать несистемные dll. Даже те, которые загружались, после переустановки виндавз НЕКОТОРЫЕ перестали загружаться.
 Даже после пересборки. А некоторые после копирования в другой каталог.
· original author: dima0905
Разъяснил немного эту cl-gd
CL-USER> (asdf:load-system 'cl-gd)
T
CL-USER> (asdf:load-system 'cl-gd-test)
T
CL-USER> (cl-gd-test:test)
Test 1 succeeded.
Test 2 succeeded.
Test 3 succeeded.
Test 4 succeeded.
Test 5 succeeded.
Test 6 succeeded.
Test 7 failed.
Test 8 succeeded.
Test 9 succeeded.
Test 10 succeeded.
Test 11 succeeded.
Test 12 succeeded.
Test 13 succeeded.
Test 14 succeeded.
Test 15 failed.
Test 16 succeeded.
Test 17 failed.
Test 18 succeeded.
Test 19 succeeded.
Done.
NIL
CL-USER>