можно ли на Фортране рисовать?

Vlvovuch

Если да, то как? Где об этом можно почитать?
Мне нужно вывести график функции на экран, у меня в книге ничего об этом не пишут. Подскажите, плиз

hoha32

Выведи координаты точек в файл и Ориджином рисуй график.

Vlvovuch

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

Vlvovuch

и какие параметры нужны этому ориджину?

Elina74

Вообще-то если ты умеешь пользоваться Excel'ем или еще какой другой прогой для построения графиков, пользуйся ей.

Vlvovuch

не, я прогу пишу на фортране и научник сказал. что там должно выводиться (ведь это только часть проги, так сказать для наглядности)..:-(
Поэтому и спрашиваю

Elina74

Ну я просто уверен, что в нем есть нужные библиотеки. А каким фортраном ты пользуешься? Версия, номер... что-нибудь о нем знаешь?

Vlvovuch

Compaq Visual Fortran Professional v6.5

yolki

в метапосте тоже графики ничё получаются - и сразу в ТеХ можно вставлять...

Vlvovuch

ну при чем тут Метапост?
мне на фортране надо

Vlvovuch

может книга есть какая-то (предпочтительней в электронном варианте посоветуйте, плиз..

Vladu

У тебя должен быть Compaq Array Visualizer. Входит в Compaq Visual Fortran Professional, посмотри help.
http://h18009.www1.hp.com/fortran/aview/

Flack_bfsp

А, собственно, в чём проблема? Которая Фортран-специфическая?
В HP Visual Fortran, как и на любом другом современном языке можно использовать графику, как WinAPI, так и OPENGL. Даже примеры соответствующие есть в папке Samples. Да ещё и специальная библиотека научной графики есть - SciGraph.
Так в чём же проблема?

Vlvovuch

не знаю, как ее использовать

Vlvovuch

и я думаю, что ведь в каждом языке (в том числе и в Фортране) есть своя графика, тем более мне ведь ничего замороченного не надо, просто выводить периодически массив в виде графика...

ava3443

Есть ещё PGPLOT
Я с помощью него весьма красивые картинки выводил в Postscript и PNG...

yolki

на фортране лучше не рисовать - принесёшь прогу в другое место, на другой компилятор и она у тебя там не заработает.
а где есть ТеХ - там есть метапост. следовательно, графики будут рисоваться...
допустим, у тебя файл a.dat, содержит данные типа:

0.10 1.19578694773185
0.15 1.30810362043697
0.20 1.43187861704419
0.25 1.56941391708213
0.30 1.72444686756794
0.35 1.89633221196656
0.40 2.09135565376013
0.45 2.30993245365545
0.50 2.55866101142031
0.55 2.84400712809483
0.60 3.16891264488147
0.65 3.55141703323903
0.70 3.99077676895635
0.75 4.52107583906814
0.80 5.14614418003444

пишешь файл на метапосте, назовём его ris.mp:

input graph
beginfig(1);
draw begingraph(10cm,5cm);
gdraw "a.dat";
glabel.lft(btex $A$ etex,13); % слева от тринадцатой точки надпись "А"
gdraw (0.0,1)--(0.85,1) dashed evenly; % некий дополнительный штрих
gdrawarrow (-0.1,0)--(1,0);
endgraph;
endfig;
end;
запускаем его: mpost ris.mp
должен создастся файл: ris.1
его можно вставить в отчёт на ТеХе:

\documentclass[a4paper]{article}
\usepackage[cp1251]{inputenc}
\usepackage[russian]{babel}
\usepackage{indentfirst}
\usepackage[dvipdfm]{graphicx}
\begin{document}
\includegraphics{ris.1}
\end{document}
выглядеть это будет примерно так:

Это наиболее простой и правильный способ отображения графиков из "сырых данных из программы", для вставки во всякие отчёты, на ТеХе в первую очередь..

Vlvovuch

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

yolki

Ну...
тебе уже сказали - на "фортране", также как и на "С" или "С++" строить графики нельзя.
Есть стандарт на эти языки и в нём не прописано никаких "графических" функций.
Другое дело, что производители компиляторов на свой лад делают графические библиотеки, весьма несовместимые между собой.
Ботай в хелп своего транслятора. А вот если ты разрабатываешь на одном трансляторе, а надо будет показывать на другом трансляторе - это труба.

durka82

Если совсем ломы читать хелп - попробуй поискать книги Бартеньева по фортрану - они должны быть в электронном виде в сетке.
"Современный фортран", например.

Vlvovuch

нашла одну книгу Бартеньева.Почитаю..
просто хелп у меня на английском, и то- там про графику ничего нет

Flack_bfsp

Примеры же есть. Или у тебя их тоже нет?

Vlvovuch

нету..:-(

Ivan8209

Можно.
Но нужно ли?
---
"Real Programmers do List Processing in Fortran.
Real Programmers do String Manipulation in Fortran.
Real Programmers do Accounting (if they do it at all) in Fortran.
Real Programmers do Artificial Intelligence programs in Fortran."

Vlvovuch

не знаю уже, что нужно.
Мне тут настоятельно советуют весь интерфейс делать на Си, и в том числе и рисовать

Ivan8209

Воспользуйся советом Панцера, заменив Оригин на твою любимую
программу для построения графиков. Это будет куда лучше, чем
учить программирование графики на Фортране.
---
...Я работаю антинаучным аферистом...

bleyman

Можно, но у 90% рисовавших на фортране отвалился член. Так что сам думай, нужно ли это тебе.

Vlvovuch

вообще-то, я - девушка...

yolki

мдаа...
это к тому, что фортран - мёртвый язык и на нём только деды писали?
это неправда. есть много современных проектов, у которых рассчётная часть на фортране написана. Ansys, Patran.
Знаю проект обсчёта одного ядерного реактора на фортране. не знаю как сейчас, а вот пять лет назад он ещё был живой и его развивали.

durka82

Вообще если надо один раз вывести график на экран - можно использовать Array Visualizer.
Но его надо дополнительно ставить.
Либо поставить Intel Fortran - там он входит в дистрибутив.
У меня есть примеры использования (правда в интеловском я их не проверял) - могу опубликовать здесь.

Vlvovuch

опубликуй плиз....

Ivan8209

Если тебе надо просто отобразить двумерный или трёхмерный
график, то поставь gnuplot и не пудри мозги.
В том числе и себе.
Если тебе надо что-то другое, то скажи, наконец,
что же именно ты хочешь.
Желательно --- словами.
Или можешь картинку нарисовать, если так удобнее.
---
...Я работаю антинаучным аферистом...

durka82

Забирай:
Там проект, в нем три примера из книги Бартеньева Современный фортран.
Для выбора конкретной версии нужно закомментировать все после меток "! Для frame", кроме нужной.
Ну еще должен Array Visualiser стоять - он должен быть в сетке.

Vlvovuch

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

yolki

А обязательно на фортране рисовать?
как вариант - визуальную часть делаешь на С(++) /Delphi
Рассчётную часть прилинковываешь к основному проекту - ведь из фортрана у тебя объектный файл получается (.obj) ?

Vlvovuch

мне так и предложили...

Vlvovuch

осталось дело за малым..реализовать..

Vlvovuch

во прикол..
пишу прогу на фортране: для числа точек разбиения 10-все делает очень хорошо, как только ставлю 100 - выдает ошибку, типа превышены границы массива. И что это значит?

durka82

Ну и?
По пунктам:
1. Берешь то, что я тебе прислал и оставляешь там один вариант;
2. Добавляешь туда код формирования нужного тебе массива;
3. Запускаешь и любуешься (наверное...)
Оставить комментарий
Имя или ник:
Комментарий: