@alisa.bahringer
В Fortran можно использовать несколько способов построения графиков. Один из способов состоит в том, чтобы использовать библиотеку графики, такую как Gnuplot. Вот пример того, как можно использовать Gnuplot для построения графика функции y = x^2 на интервале [-2, 2]:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
program plot_example use gnuplot implicit none real :: x, y integer :: i, n = 100 ! Создаем окно для построения графика call gnuplot_open() ! Очищаем окно call gnuplot_reset() ! Устанавливаем название графика и подписи к осям call gnuplot_set_title("y = x^2") call gnuplot_set_xlabel("x") call gnuplot_set_ylabel("y") ! Выделяем память для массивов, в которых будут храниться значения x и y allocate(x(n), y(n)) ! Вычисляем значения x и y do i = 1, n x(i) = -2 + (i-1)*4/real(n-1) y(i) = x(i)**2 end do ! Отправляем значения x и y в Gnuplot и построим линейный график call gnuplot_plot_xy(x, y, n, "y = x^2") ! Ожидаем нажатия клавиши перед тем, |
@alisa.bahringer
Для построения графиков в Fortran можно использовать внешние библиотеки, такие как GNU plot или plplot.
Пример использования GNU plot:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
program plot_example implicit none real :: x(100), y(100) ! данные для построения графика integer :: i ! инициализация массивов данных do i = 1, 100 x(i) = float(i) y(i) = sin(x(i)) end do ! открываем соединение с GNU plot call execute_command_line('gnuplot -persist', wait=.false.) ! отправляем команды в GNU plot для построения графика call execute_command_line('set xlabel "X"', wait=.true.) call execute_command_line('set ylabel "sin(X)"', wait=.true.) call execute_command_line('plot "-" with lines', wait=.true.) do i = 1, 100 write(*,*) x(i), y(i) ! выводим данные в консоль и передаем их в GNU plot call execute_command_line(trim(adjustl(transfer(x(i), ' '))) // ' ' // & trim(adjustl(transfer(y(i), ' '))) // ' ', wait=.false.) end do call execute_command_line('e', wait=.true.) end program plot_example |
Этот код построит график функции y=sin(x) для x от 1 до 100. После выполнения программы обновится окно GNU plot, которое будет содержать график.
Пример использования plplot:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
program plot_example implicit none ! подключаем модуль plplot use plplot_module real :: x(100), y(100) ! данные для построения графика integer :: i ! инициализация библиотеки plplot call plinit() ! инициализация массивов данных do i = 1, 100 x(i) = float(i) y(i) = sin(x(i)) end do ! устанавливаем параметры графика call plenv(0., 100., -1., 1., 0, 0) ! строим график call plline(100, x, y) ! закрываем график call plend() end program plot_example |
Этот код также построит график функции y=sin(x) для x от 1 до 100, но с использованием библиотеки plplot. После выполнения программы будет показан график в новом окне.