GnuPlot. Строим графики.

Первый шаг

Итак. У нас есть данные, полученные в результате эксперимента. Скажем, вот такого вида:
</1.0
1.5
2.0
2.5
3.0
3.5
4.0
4.5
5.0
5.5
5.5
5.5
5.5
5.5
5.5
5.5
5.5
6.0>

Построить график? Что может быть проще! (При условии, что у нас есть gnuplot, установленный под Linux или Cygwin)

Данные сохраним в файл data1.txt и запустим gnuplot:
</D:\MVB_Home\Development\Publication\gnuplot>gnuplot

        G N U P L O T
        Version 4.4 patchlevel 0
        last modified March 2010
        System: CYGWIN_NT-6.1 1.7.8(0.236/5/3)

        Copyright © 1986-1993, 1998, 2004, 2007-2010
        Thomas Williams, Colin Kelley and many others

        gnuplot home:     http://www.gnuplot.info
        faq, bugs, etc:   type "help seeking-assistance"
        immediate help:   type "help"
        plot window:      hit 'h'

Terminal type set to 'unknown'
gnuplot> set terminal jpeg size 640,480
Terminal type set to 'jpeg'
Options are 'nocrop font arial 12 size 640,480 '
gnuplot> set output "data_1.0.jpg"
gnuplot> plot "data1.txt"
gnuplot> exit

D:\MVB_Home\Development\Publication\gnuplot>
>

В файле data_1.0.jpg нас ждёт построенный график.

</set terminal jpeg size 640,480>

По умолчанию, gnuplot будет выводить график в окно x11 терминала. Эта команда заставит выводить картинку в формате jpeg.
</set output "data_1.0.jpg">

Эта команда указывает в какой файл выводить.
</plot "data1.txt">

Много графиков

Два — это уже много :)
Хотим мы посмотреть ток и напряжение на одной временной шкале. Нет проблем!
Пусть данные будут такими:
</0 1.0 0.5E1
1 1.5 0.4E1
2 2.0 0.3E1
3 2.5 0.2E1
4 3.0 0.1E1
5 3.5 0.9E0
6 4.0 0.8E0
7 4.5 0.7E0
8 5.0 0.6E0
9 5.5 0.5E0
16 5.5 0.5E0
17 6.0 0.4E0>

Построим график таким скриптом:
</#!/bin/bash

gnuplot << EOP

datafile = "data3.txt"

set terminal jpeg size 640,480
set output "data_3.1.jpg"

plot datafile with lines, \
     datafile using 1:3 with lines axes x1y2

EOP>

И получим такой результат:

</plot datafile with lines, \
     datafile using 1:3 with lines axes x1y2>

gnuplot воспринимает это как одну строку. Первая часть использует умолчания и интерпретируется как:
</datafile using 1:2 with lines>

Вторая часть рисует второй график, используя ось X и вторую (правую) шкалу Y, беря данные из 1-й(время, x) и 3-й(ток, y2) колонок файла данных.

0 комментариев

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.