## Оглавление раздела

- Общие сведения о кривых
- Параметры curve.xcol / curve.ycol
- Параметр curve.data
- Параметр curve.color
- Параметр curve.style
- Параметр curve.hide
- Параметр curve.title

## Общие сведения о кривых

Под кривыми понимаются линии, которые соединяют точки, координаты которых заданы данными. Кривых на графике может быть неограниченное количество, при этом для задания параметров кривые имеют имена curve1, curve2 и т.д.; curve1 можно называть просто curve.
Простейший способ построить график - это задать данные в тексте викистраницы, внутри команды plot. Рассмотрим команду:

    (:plot:)
    1    10    20    30    40
    2    11    22    31    41
    3    13    24    33    42
    4    15    25    35    43
    5    16    26    36    44
    6    18    27    37    45
    7    20    30    38    46
    8    20    30    38    46
    9    20    30    38    46
    10   20    30    38    46
    (:plotend:)

Результат будет выглядеть следующим образом:
Поскольку мы не задали никаких параметров, а в данных содержится больше одного столбца, то в качестве координат точек по оси X используется первый столбец, а в качестве координат Y - второй. Для того, чтобы создать вторую кривую, достаточно установить какой-либо параметр для нее, что будет показано далее.

## Параметры curve.xcol / curve.ycol

Добавим вторую кривую, для которой координаты точек по оси Y задает третий столбец. Для этого используется параметр curve.ycol.

    (:plot
    curve2.ycol = 3
    :)
    1    10    20    30    40
    2    11    22    31    41
    3    13    24    33    42
    4    15    25    35    43
    5    16    26    36    44
    6    18    27    37    45
    7    20    30    38    46
    8    20    30    38    46
    9    20    30    38    46
    10   20    30    38    46
    (:plotend:)

Аналогично можно изменить столбец с координатами Y для первой кривой, например, следующим образом:

    (:plot
    curve1.ycol = 4
    curve2.ycol = 3
    :)
    1    10    20    30    40
    2    11    22    31    41
    3    13    24    33    42
    4    15    25    35    43
    5    16    26    36    44
    6    18    27    37    45
    7    20    30    38    46
    8    20    30    38    46
    9    20    30    38    46
    10   20    30    38    46
    (:plotend:)

В предыдущем примере вместо curve1.ycol = 4 можно было бы написать просто curve.ycol = 4.
Аналогично с помощью параметра curve.xcol можно задавать столбец для координаты X:

    (:plot
    curve1.xcol = 2
    curve1.ycol = 4
    :)
    1    10    20    30    40
    2    11    22    31    41
    3    13    24    33    42
    4    15    25    35    43
    5    16    26    36    44
    6    18    27    37    45
    7    20    30    38    46
    8    20    30    38    46
    9    20    30    38    46
    10   20    30    38    46
    (:plotend:)

Если столбец в данных единственный, то по умолчанию считается, что он задает координаты Y, а по оси X откладываются числа 0, 1, 2,... Например:

    (:plot:)
    40
    41
    42
    43
    44
    45
    46
    46
    46
    46
    (:plotend:)

Если столбцов несколько, то аналогичного результата для оси X можно добиться, установив значение curve.xcol = number:

    (:plot
    curve1.xcol = number
    curve1.ycol = 4
    :)
    1    10    20    30    40
    2    11    22    31    41
    3    13    24    33    42
    4    15    25    35    43
    5    16    26    36    44
    6    18    27    37    45
    7    20    30    38    46
    8    20    30    38    46
    9    20    30    38    46
    10   20    30    38    46
    (:plotend:)

## Параметр curve.data

В предыдущих примерах данные для графиков были вставлены непосредственно в текст страницы, но это может быть не удобно, если данных много. Поэтому данные могут читаться из прикрепленных файлов. В этом случае файл хранит данные в том же формате, что использовался ранее в примерах. Например, прикрепленный к этой странице файл example_5.txt, и который будет использоваться в этом разделе, содержит следующие строки:

    1    10    20    30    40
    2    11    22    31    41
    3    13    24    33    42
    4    15    25    35    43
    5    16    26    36    44
    6    18    27    37    45
    7    20    30    38    46
    8    20    30    38    46
    9    20    30    38    46
    10   20    30    38    46

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

    (:plot
    curve.data="Attach:example_5.txt"
    :)
    (:plotend:)

Поскольку в значении параметра встречается символ ":", здесь необходимы кавычки.

При этом остальные параметры работают точно также. Например:

    (:plot
    curve.data="Attach:example_5.txt"
    curve.xcol=1
    curve.ycol=2

    curve2.data="Attach:example_5.txt"
    curve2.xcol=1
    curve2.ycol=3
    :)
    (:plotend:)

## Параметр curve.color

Чтобы изменить цвет кривой, используется параметр curve.color. Цвет задается теми же способами, как это принято в HTML. Например:

    (:plot
    curve.color="#1CE81C"
    curve.ycol=2

    curve2.color="#0BA"
    curve2.ycol=3

    curve3.color="rgb(180, 64, 180)"
    curve3.ycol=4

    curve4.color="black"
    curve4.ycol=5
    :)
    1    10    20    30    40
    2    11    22    31    41
    3    13    24    33    42
    4    15    25    35    43
    5    16    26    36    44
    6    18    27    37    45
    7    20    30    38    46
    8    20    30    38    46
    9    20    30    38    46
    10   20    30    38    46
    (:plotend:)

## Параметр curve.style

С помощью параметра curve.style можно задавать тип линий: сплошная линия, штриховая, пунктирная, штрихпунктирная и т.п.
Параметру curve.style можно присваивать либо строковое значение, описывающее тип линии, либо номер этого стиля. Возможные значения показаны в следующей таблице:

Номер стиля | Название стиля
1 | solid
2 | longdash
3 | shortdash
4 | shortdot
5 | shortdashdot
6 | shortdashdotdot
7 | dot
8 | dash
9 | dashdot
10 | longdashdot
11 | longdashdotdot

Например:

    (:plot
    curve.style="longdash"
    curve.ycol=2

    curve2.style=3
    curve2.ycol=3

    curve3.style="dashdot"
    curve3.ycol=4

    curve4.style="1"
    curve4.ycol=5
    :)
    1    10    20    30    40
    2    11    22    31    41
    3    13    24    33    42
    4    15    25    35    43
    5    16    26    36    44
    6    18    27    37    45
    7    20    30    38    46
    8    20    30    38    46
    9    20    30    38    46
    10   20    30    38    46
    (:plotend:)

Кроме того, параметр curve.style может принимать значение auto, который обозначает, что кривой присваивается номер стиля в соответствии с ее номером (если кривых больше 11, стили циклически повторяются).
Например:

    (:plot
    curve.style=auto
    curve.ycol=2

    curve2.style=auto
    curve2.ycol=3

    curve3.style=auto
    curve3.ycol=4

    curve4.style=auto
    curve4.ycol=5
    :)
    1    10    20    30    40
    2    11    22    31    41
    3    13    24    33    42
    4    15    25    35    43
    5    16    26    36    44
    6    18    27    37    45
    7    20    30    38    46
    8    20    30    38    46
    9    20    30    38    46
    10   20    30    38    46
    (:plotend:)

## Параметр curve.hide

Если нужно временно скрыть какую-либо кривую, не удаляя все упоминания ее из параметров команды plot, можно воспользоваться параметром curve.hide. В следующем примере установлены параметры для четырех кривых, но вторая из них скрыта. В этом примере также для наглядности используется параметр legend.

    (:plot
    curve.ycol=2
    curve2.ycol=3
    curve3.ycol=4
    curve4.ycol=5
    legend

    curve2.hide
    :)
    1    10    20    30    40
    2    11    22    31    41
    3    13    24    33    42
    4    15    25    35    43
    5    16    26    36    44
    6    18    27    37    45
    7    20    30    38    46
    8    20    30    38    46
    9    20    30    38    46
    10   20    30    38    46
    (:plotend:)

Если установить параметр curve.hide=0, то данный параметр будет игнорироваться, и кривая не будет скрываться.

## Параметр curve.title

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

    (:plot
    curve.ycol=2
    curve.title = "Первая кривая"

    curve2.ycol=3
    curve2.title = "Вторая кривая"

    curve3.ycol=4
    curve3.title = "Третья кривая"

    legend
    :)
    1    10    20    30    40
    2    11    22    31    41
    3    13    24    33    42
    4    15    25    35    43
    5    16    26    36    44
    6    18    27    37    45
    7    20    30    38    46
    8    20    30    38    46
    9    20    30    38    46
    10   20    30    38    46
    (:plotend:)