Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.12.12;
Скачать: [xml.tar.bz2];

Вниз

График   Найти похожие ветки 

 
Explorer   (2002-11-28 14:46) [0]

Мастера!

Как нарисовать какой-нибудь график (x, y), чтобы можно было менять несколько точек на этом графике и он перересовывался, а так же цвет линий и т.д.?

Можно примерчик и посоветуйте, что почитать, а то никогда еще такое не делал.


 
MBo   (2002-11-28 14:50) [1]

Сам рисуй на Canvas или используй TChart


 
Explorer   (2002-11-29 12:33) [2]

А где про это можно почитать?


 
LongIsland   (2002-11-29 12:37) [3]

Если никогда не делал, то лучше используй TChart. Пример в Demo к Delphi


 
Андрей Сенченко   (2002-11-29 12:43) [4]

Explorer © (29.11.02 12:33)
А где про это можно почитать?

1. Безусловно в книжках.
2. Безусловно в хелпе.
3. Можно : пошукать по форуму
4. Можно : пошукать по FAQ


 
Explorer   (2002-12-02 07:50) [5]

Покопался немного в TCHART.

Подскажите, а можно реализовать при помощи этой компоненты, такую задачку:

построить график по заданным точкам (которые пользователь может потом изменить!), выделив на графике эти точки и при помощи мыши изменять координаты этих точек.

Если при с помощью TChart нельзя воплотить, то как ВООБЩЕ это можно сделать?


 
Axis_of_Evil   (2002-12-02 09:18) [6]

По заданным точкам: f(x) = ...
Дважды кликни на Chart1 в режиме конструирования
|
создай серию (график - линия)
x: Integer; |
for x := 1 to 100 do
Chart1.SeriesList[0].AddXY(x, f(x), "a", ClRed);
или
x: Real;
x := 0.0;
while (x <= 100.0) do
begin
Chart1.SeriesList[0].AddXY(x, f(x), "a", ClRed);
x := x + 0.1;
end;

где f(x) - функция, или выражение, пример:
...
Chart1.SeriesList[0].AddXY(x, x*x + exp(x), "a", ClRed);
...

или

real function f(x: Real);
begin
Result := x*x + exp(x);
end;

...
Chart1.SeriesList[0].AddXY(x, f(x), "a", ClRed);
...



 
Explorer   (2002-12-02 10:20) [7]

>Axis_of_Evil ©

Это мне понятно. А вот, как например, можно изменить полученный график, при помощи мыши (потянуть график вниз, вверх и т.д.)?


 
Explorer   (2002-12-03 08:52) [8]

Ни кто с этим не сталкивался?


 
KoluChi   (2002-12-03 09:27) [9]

Насчет TChart"а: отлавливать события мыши и изменять данные у кривой.
Но TChart не есть очень хорошо - много не нужного, к тому же не очень красиво (дело вкуса). Я согласент с MBo, что лучше будет рисовать самому:
1. Не так это сложно.
2. Все-таки опыт.
3. Должно получиться более красиво и рисоваться должно быстрее(если все правильно сделать).


 
Explorer   (2002-12-03 10:38) [10]

>KoluChi ©
Да я бы с удовольствием! Вот только, не могу инфы никакой найти.
По TChart нашел, а вот рисование на канве..:((
Сейчас еще поищу. Спасибо!


 
Наезжалкин   (2002-12-03 10:44) [11]

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


 
Explorer   (2002-12-03 11:05) [12]

>Наезжалкин

Попытаюсь!



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2002.12.12;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.005 c
1-36115
aterm
2002-12-03 11:37
2002.12.12
как отловить вставку из буфера в определенную TMemo?


1-36091
^Sanya
2002-12-02 00:52
2002.12.12
TMemo:


14-36369
Starkom
2002-11-20 15:20
2002.12.12
Помогите с InstallShield и BDE


1-36200
don_dampster
2002-12-04 11:42
2002.12.12
Как получить путь к моему приложению?


1-36207
XMblPb
2002-12-01 15:23
2002.12.12
Создание пунктов меню в runtime?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский