библиотека для построения 2d графиков
От: Аноним  
Дата: 25.12.06 20:12
Оценка:
Какие существуют библиотеки для построения 2d графиков (для win32 приложения)? Нужно просто отображать график некоторой функции и оси координат с отметками. Желательно еще чтобы могла рисовать координатную сетку.
GDI ? иль может GDI+ (-)
От: dachny  
Дата: 25.12.06 20:45
Оценка:
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re: библиотека для построения 2d графиков
От: 0x8000FFFF Россия  
Дата: 25.12.06 20:45
Оценка:
GDI+
DirectX (DirectDraw)
OpenGL
Re: библиотека для построения 2d графиков
От: Аноним  
Дата: 26.12.06 04:21
Оценка:
Народ, какой еще gdi? Я не хочу рисовать графики с нуля (хотя на данный момент так и делаю). Мне нужна библиотека которая бы делала это за меня.
Т.е. что-то вроде
#include "plotting_lib.h"
...
plotter pl;
pl.set_xy_limits(0, 10, 0, 10);
pl.plot(hDC, &fun);
Re[2]: библиотека для построения 2d графиков
От: 0x8000FFFF Россия  
Дата: 26.12.06 07:43
Оценка: +1
Ну блин обленились... написать такую либу я думаю пару дней...
Можно с интерполяцией сплайнами.
Re[3]: библиотека для построения 2d графиков
От: Аноним  
Дата: 26.12.06 08:56
Оценка:
Здравствуйте, 0x8000FFFF, Вы писали:

FFF>Ну блин обленились... написать такую либу я думаю пару дней...


Ну блин обленились... Писать два дня либу, состоящую из одной функции PolyLine...
Re[3]: библиотека для построения 2d графиков
От: Аноним  
Дата: 26.12.06 11:41
Оценка:
Здравствуйте, 0x8000FFFF, Вы писали:

FFF>Ну блин обленились... написать такую либу я думаю пару дней...

FFF>Можно с интерполяцией сплайнами.

Я и написал...
Но ситуация следующая. Проблема в том что заказчик (он же мой препод:) ) считает, что графики строятся недостаточно точно. Сама прога предназначена для выдачи лаб. заданий студентам, которые должны произвести какие-то расчеты (неважно). Препод говорит, что в 30% случаев получается слишком большая погрешность из-за того что кривая состоит не из точек, а из коротких отрезков соединенных между собой и предлагает уменьшить длину этих отрезков. Но на мой взгляд, дальше уже нет смысла...
(Вы как считате?)


Возможно проблема в том, что я отметки не очень точно вывел или еще что...

Потому я и хочу железо-бетонный вариант — использовать авторитетную либу. Или есть еще какие-то предложения?
Re[4]: библиотека для построения 2d графиков
От: Аноним  
Дата: 26.12.06 12:17
Оценка: 7 (1)
Я так понял gnuplot то, что мне нужно. Кто знает, можно ли его запускать не в виде отдельной проги, а выводить график в клиентской области моего окна или сделать дочерним окном моей проги?
Re[4]: библиотека для построения 2d графиков
От: dotidot Россия  
Дата: 26.12.06 12:22
Оценка:
Здравствуйте, Аноним, Вы писали:
А>Я и написал...
А> Сама прога предназначена для выдачи лаб. заданий студентам, которые должны произвести какие-то расчеты (неважно). ... Но на мой взгляд, дальше уже нет смысла...
он что с линейкой по экрану лазает?

А>(Вы как считате?)

считаю ништяк график.

А>Возможно проблема в том, что я отметки не очень точно вывел или еще что...

забей

А>Потому я и хочу железо-бетонный вариант — использовать авторитетную либу. Или есть еще какие-то предложения?

причины ясны. надо было сразу в ТЗ точность пикселей и радиус антикривизны экрана обговорить
а вообще что он хотел? чудес?
Re[4]: библиотека для построения 2d графиков
От: dotidot Россия  
Дата: 26.12.06 12:24
Оценка:
Здравствуйте, Аноним, Вы писали:
А>Но ситуация следующая. Но на мой взгляд, дальше уже нет смысла...
Кстати есть предложение сделать сам график толщиной в 10пикселов розового цвета с жестким антиалиасингом, чтоб порасплывчатей было. Тогда на пикселы уже будет наплевать.
Re[5]: библиотека для построения 2d графиков
От: dotidot Россия  
Дата: 26.12.06 12:37
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Я так понял gnuplot то, что мне нужно. Кто знает, можно ли его запускать не в виде отдельной проги, а выводить график в клиентской области моего окна или сделать дочерним окном моей проги?

можно, конечно. смотри FAQ

\subsection{Can I use \gnuplot{} routines for my own programs?}

On systems supporting pipes, you can pipe commands to \gnuplot{} from other
programs. Many applications with gnuplot as the graphics engine, like Octave
(\http{www.octave.org}), uses this method. This also works from a cgi script to
drive \gnuplot{} from a forms-based web page.

John Campbell (\mailto{jdc@nauvax.ucc.nau.edu}) modified a much earlier
version of \gnuplot{} (3.5) to be a library of C subroutines callable
from a C program. Gnuplot itself has changed radically since then,
and we are not aware of any plans to create a similar library based on
the current version.


Но думаю, что повышения точности вряд ли будет Зато пальцы можно веером сразу
Re[5]: библиотека для построения 2d графиков
От: Аноним  
Дата: 26.12.06 12:50
Оценка:
Здравствуйте, dotidot, Вы писали:

D>он что с линейкой по экрану лазает?

График можно сохранить и распечатать.

А>>(Вы как считате?)

D>считаю ништяк график.
Спасибо.

А>>Возможно проблема в том, что я отметки не очень точно вывел или еще что...

D>забей
Я бы с радостью...

А>>Потому я и хочу железо-бетонный вариант — использовать авторитетную либу. Или есть еще какие-то предложения?

D>причины ясны. надо было сразу в ТЗ точность пикселей и радиус антикривизны экрана обговорить
D>а вообще что он хотел? чудес?
Он хочет чтобы не было погрешностей...

А>Кто знает, можно ли его запускать не в виде отдельной проги, а выводить график в клиентской области моего окна или сделать дочерним окном моей проги?

D>можно, конечно. смотри FAQ <...>
Спасибо. Правда, ни хрена не понял, но попробую разобраться.
Re[4]: библиотека для построения 2d графиков
От: 0x8000FFFF Россия  
Дата: 26.12.06 13:25
Оценка:
Кто же точки прямыми соединяет... ну блин... читайте глава Интерполяция (например Кубическим сплайном)... Или воспользуйтесь Безье Сплайнами.
Re[5]: библиотека для построения 2d графиков
От: Аноним  
Дата: 26.12.06 13:29
Оценка:
Здравствуйте, 0x8000FFFF, Вы писали:

FFF>Кто же точки прямыми соединяет... ну блин... читайте глава Интерполяция (например Кубическим сплайном)... Или воспользуйтесь Безье Сплайнами.

Вы уверены, что разница будет заметна?
Re[4]: библиотека для построения 2d графиков
От: Lorenzo_LAMAS  
Дата: 26.12.06 14:37
Оценка:
А>Я и написал...
А>Но ситуация следующая. Проблема в том что заказчик (он же мой препод ) считает, что графики строятся недостаточно точно. Сама прога предназначена для выдачи лаб. заданий студентам, которые должны произвести какие-то расчеты (неважно). Препод говорит, что в 30% случаев получается слишком большая погрешность из-за того что кривая состоит не из точек, а из коротких отрезков соединенных между собой и предлагает уменьшить длину этих отрезков. Но на мой взгляд, дальше уже нет смысла...
А>(Вы как считате?)

По-моему, отличный график. Думается мне, что если для заданий студентам эти графики рисовать самому от руки, выйдет гораздо хуже К тому же, например Maple 10 — он такое мерзкое безобразие строит, приведенный тобой пример — шедевр по сравнению с ним.
Of course, the code must be complete enough to compile and link.
Re[5]: библиотека для построения 2d графиков
От: Аноним  
Дата: 26.12.06 15:07
Оценка:
Здравствуйте, 0x8000FFFF, Вы писали:

FFF>Кто же точки прямыми соединяет... ну блин... читайте глава Интерполяция (например Кубическим сплайном)... Или воспользуйтесь Безье Сплайнами.


А что, компьютер умеет как-то хитро эти Безье сплайны строить, не приближая их ломанной?
Re[6]: библиотека для построения 2d графиков
От: Аноним  
Дата: 26.12.06 15:23
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, 0x8000FFFF, Вы писали:


FFF>>Кто же точки прямыми соединяет... ну блин... читайте глава Интерполяция (например Кубическим сплайном)... Или воспользуйтесь Безье Сплайнами.


А>А что, компьютер умеет как-то хитро эти Безье сплайны строить, не приближая их ломанной?


И вообще, если автор вопроса имеет дело с аналитически заданной функцией, то зачем же ему сплайны?
Re[5]: библиотека для построения 2d графиков
От: night beast СССР  
Дата: 27.12.06 05:23
Оценка:
Здравствуйте, Lorenzo_LAMAS, Вы писали:

L_L>По-моему, отличный график. Думается мне, что если для заданий студентам эти графики рисовать самому от руки, выйдет гораздо хуже К тому же, например Maple 10 — он такое мерзкое безобразие строит, приведенный тобой пример — шедевр по сравнению с ним.


у меня шестой. строит нормально. какая функция?
Re[6]: библиотека для построения 2d графиков
От: Lorenzo_LAMAS  
Дата: 27.12.06 07:51
Оценка:
Здравствуйте, night beast, Вы писали:

NB>Здравствуйте, Lorenzo_LAMAS, Вы писали:


L_L>>По-моему, отличный график. Думается мне, что если для заданий студентам эти графики рисовать самому от руки, выйдет гораздо хуже К тому же, например Maple 10 — он такое мерзкое безобразие строит, приведенный тобой пример — шедевр по сравнению с ним.


NB>у меня шестой. строит нормально. какая функция?

Во-первых, прошу прощения, я наврал про 10 — именно шестой. Во-вторых, если строить при помощи implicitplot какие-нить функции, то графики получаются — так себе. Постоянно какие-то разрывы (линия не сплошная) и уж никак не "точнее", чем у автора топика.
Of course, the code must be complete enough to compile and link.
Re[7]: библиотека для построения 2d графиков
От: night beast СССР  
Дата: 27.12.06 08:03
Оценка:
Здравствуйте, Lorenzo_LAMAS, Вы писали:

L_L>>>По-моему, отличный график. Думается мне, что если для заданий студентам эти графики рисовать самому от руки, выйдет гораздо хуже К тому же, например Maple 10 — он такое мерзкое безобразие строит, приведенный тобой пример — шедевр по сравнению с ним.


NB>>у меня шестой. строит нормально. какая функция?

L_L>Во-первых, прошу прощения, я наврал про 10 — именно шестой. Во-вторых, если строить при помощи implicitplot какие-нить функции, то графики получаются — так себе. Постоянно какие-то разрывы (линия не сплошная) и уж никак не "точнее", чем у автора топика.

наговариваете вы на мапл.
вы-первых, implicitplot строит график функции, заданой неявно. а для обычной функции (наш случай?) вполне справляется plot.
во-вторых, качество можно регулировать с помошью опции numpoints=<число точек>.
Re[8]: библиотека для построения 2d графиков
От: Lorenzo_LAMAS  
Дата: 27.12.06 08:15
Оценка:
Здравствуйте, night beast, Вы писали:

NB>Здравствуйте, Lorenzo_LAMAS, Вы писали:


L_L>>>>По-моему, отличный график. Думается мне, что если для заданий студентам эти графики рисовать самому от руки, выйдет гораздо хуже К тому же, например Maple 10 — он такое мерзкое безобразие строит, приведенный тобой пример — шедевр по сравнению с ним.


NB>>>у меня шестой. строит нормально. какая функция?

L_L>>Во-первых, прошу прощения, я наврал про 10 — именно шестой. Во-вторых, если строить при помощи implicitplot какие-нить функции, то графики получаются — так себе. Постоянно какие-то разрывы (линия не сплошная) и уж никак не "точнее", чем у автора топика.

NB>наговариваете вы на мапл.


Т.е., ты можешь привести пример графика, такого как у анонима, но с лучшим качеством?

NB>вы-первых, implicitplot строит график функции, заданой неявно. а для обычной функции (наш случай?) вполне справляется plot.


Нуну. Что строит имплицитплот — я знаю. Число точек не помогает — дырки все равно остаются. Я понимаю, что для неявно заданной функции нужно повозиться побольше, чем для явно заданной, но, с другой стороны maple, наверное, не дилетанты пишут? Сразу скажу, я имею лишь смутное (наверняка ошибочное) представление, как строят такие кривые (наверное, двумерный аналог marching cubes?)

А вот простенький пример

plot(x*x, x = -1..1);

и то с разрывом строит. Да, и, конечно, никакого антиалиасинга У меня на маке графер такие отменные гладенькие линии строит
Of course, the code must be complete enough to compile and link.
Re[9]: библиотека для построения 2d графиков
От: night beast СССР  
Дата: 27.12.06 08:57
Оценка:
Здравствуйте, Lorenzo_LAMAS, Вы писали:

NB>>наговариваете вы на мапл.


L_L>Т.е., ты можешь привести пример графика, такого как у анонима, но с лучшим качеством?


ну я не говорил что у анонима плохой график. я говорил что мапл нормально строит графики.
не видел функцию для той картинки. если будет, то смогу показать что строит мапл.

NB>>вы-первых, implicitplot строит график функции, заданой неявно. а для обычной функции (наш случай?) вполне справляется plot.


L_L>Нуну. Что строит имплицитплот — я знаю. Число точек не помогает — дырки все равно остаются. Я понимаю, что для неявно заданной функции нужно повозиться побольше, чем для явно заданной, но, с другой стороны maple, наверное, не дилетанты пишут? Сразу скажу, я имею лишь смутное (наверняка ошибочное) представление, как строят такие кривые (наверное, двумерный аналог marching cubes?)


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

L_L>А вот простенький пример


L_L>plot(x*x, x = -1..1);


L_L>и то с разрывом строит. Да, и, конечно, никакого антиалиасинга У меня на маке графер такие отменные гладенькие линии строит


вам шашечки, или ехать?

Re[10]: библиотека для построения 2d графиков
От: Lorenzo_LAMAS  
Дата: 27.12.06 09:01
Оценка:
Завтра я принесу примеры паршивых графиков мэпла
Of course, the code must be complete enough to compile and link.
Re[11]: библиотека для построения 2d графиков
От: night beast СССР  
Дата: 27.12.06 09:13
Оценка:
Здравствуйте, Lorenzo_LAMAS, Вы писали:

L_L>Завтра я принесу примеры паршивых графиков мэпла


тащи...
Re[12]: библиотека для построения 2d графиков
От: Lorenzo_LAMAS  
Дата: 27.12.06 09:20
Оценка:
Здравствуйте, night beast, Вы писали:

NB>Здравствуйте, Lorenzo_LAMAS, Вы писали:


L_L>>Завтра я принесу примеры паршивых графиков мэпла


NB>тащи...


Справедливости ради — вроде 10 версия стала нормально строить implicitplot. Но увы, тормозит оно все теперь.
Of course, the code must be complete enough to compile and link.
Re[13]: библиотека для построения 2d графиков
От: night beast СССР  
Дата: 27.12.06 09:27
Оценка:
Здравствуйте, Lorenzo_LAMAS, Вы писали:

L_L>>>Завтра я принесу примеры паршивых графиков мэпла


NB>>тащи...


L_L>Справедливости ради — вроде 10 версия стала нормально строить implicitplot. Но увы, тормозит оно все теперь.


случайно не в курсе, они шестерку свободно не отдают?
а то у нас в конторе за нелиценз.софт скоро будут гонять...
Re[14]: библиотека для построения 2d графиков
От: Lorenzo_LAMAS  
Дата: 27.12.06 09:36
Оценка:
Здравствуйте, night beast, Вы писали:

NB>Здравствуйте, Lorenzo_LAMAS, Вы писали:


L_L>>>>Завтра я принесу примеры паршивых графиков мэпла


NB>>>тащи...


L_L>>Справедливости ради — вроде 10 версия стала нормально строить implicitplot. Но увы, тормозит оно все теперь.


NB>случайно не в курсе, они шестерку свободно не отдают?

NB>а то у нас в конторе за нелиценз.софт скоро будут гонять...

Не, не в курсе Но думаю, нет.
Of course, the code must be complete enough to compile and link.
Re[15]: библиотека для построения 2d графиков
От: Lorenzo_LAMAS  
Дата: 28.12.06 08:09
Оценка:
Of course, the code must be complete enough to compile and link.
Re[16]: библиотека для построения 2d графиков
От: night beast СССР  
Дата: 28.12.06 08:23
Оценка:
Здравствуйте, Lorenzo_LAMAS, Вы писали:

нормальный график
могли бы конечно и получше...
на то он и implicitplot.

Re[17]: библиотека для построения 2d графиков
От: Lorenzo_LAMAS  
Дата: 28.12.06 09:07
Оценка: :)
Нормальные графики смотри тут

http://en.wikipedia.org/wiki/Image:Grapherexample.jpg
Of course, the code must be complete enough to compile and link.
Re: библиотека для построения 2d графиков
От: Ubivetz Украина  
Дата: 28.12.06 16:09
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Какие существуют библиотеки для построения 2d графиков (для win32 приложения)? Нужно просто отображать график некоторой функции и оси координат с отметками. Желательно еще чтобы могла рисовать координатную сетку.

Лови. Описывается одна, но суперавторитетная "либа" http://www.interface.ru/home.asp?artId=3088
Эх, люблю выпить и переспать с кем нибудь!
Но чаще выходит перепить с кем — нибудь и выспаться...
Re: библиотека для построения 2d графиков
От: artelk  
Дата: 29.12.06 10:21
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Какие существуют библиотеки для построения 2d графиков (для win32 приложения)? Нужно просто отображать график некоторой функции и оси координат с отметками. Желательно еще чтобы могла рисовать координатную сетку.


В свое время тоже долго искал библиотеку для рисования всевозможных графиков. Остановился на С'шной межплатформенной dislin.
Можно рисовать любые графики, сохранять в файл в любом формате (растровая, векторная графика), по осям можно рисовать теховые формулы, разные шрифты и т.п.
Рисовальные проги писал под mingw — для него либа бесплатна (была по крайней мере). Советую вобщем
Re[2]: библиотека для построения 2d графиков
От: artelk  
Дата: 29.12.06 10:25
Оценка:

Note that you don't need a DISLIN license for a non-commercial use of DISLIN.

Re[4]: библиотека для построения 2d графиков
От: Димчанский Литва http://dimchansky.github.io/
Дата: 07.01.07 23:35
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>Я и написал...

А>Но ситуация следующая. Проблема в том что заказчик (он же мой препод ) считает, что графики строятся недостаточно точно. Сама прога предназначена для выдачи лаб. заданий студентам, которые должны произвести какие-то расчеты (неважно). Препод говорит, что в 30% случаев получается слишком большая погрешность из-за того что кривая состоит не из точек, а из коротких отрезков соединенных между собой и предлагает уменьшить длину этих отрезков. Но на мой взгляд, дальше уже нет смысла...

А>Возможно проблема в том, что я отметки не очень точно вывел или еще что...


А>Потому я и хочу железо-бетонный вариант — использовать авторитетную либу. Или есть еще какие-то предложения?


А чего в Matlab не построит с тем шагом, какой ему нужен?
Можно, кстати, сравнить с разными графиками (разного шага) из Matlab.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.