Например,
какой-нибудь осмысленный — \caption{Первая картинка}.
Так.
Вот мы видим, что
теперь этот рисунок оформлен уже как рисунок. Он получил номер,
заголовок, можно подставить в исходном тексте к нему \label
и ссылаться потом на него точно так же, как
мы это делали в предыдущие разы с командой figure.
Если мы хотим, чтобы
картинка сама была выровнена по центру, то нужно точно так же,
как и раньше использовать окружение \begin{center} ... \end{center} внутри figure.
Так. Ну что?
Картинка выровнялась по центру, что нам и нужно было.
Так, ну, какие еще простые вещи можно делать
внутри нашей картинки, не...
без всяких ухищрений которые, которые потребуют
долгой подготовки?
Ну, я сейчас нарисую то, что называется сеткой.
\draw из точки (0,0), ну а теперь уже тут не двойная черточка,
которая означает отрезок, а слово grid, которое означает сетка.
И у меня самая большая координата — это (2,3), то есть линия, которую до этого
рисовал, уходит туда, поэтому я нарисую сетку координатную
из точки (0,0) в точку (2,3).
Так, ну что, опять я забыл точку с запятой.
Вот, у нас теперь появилась сетка.
Ну, что в этой сетке хорошего?
Если нам нужно
нарисовать какую-то картинку, в которой координаты имеют
значение, то мы можем воспользоваться вот этой
командой grid, чтобы читателю и зрителю
было легко увидеть, какие координаты у каких точек.
Но здесь то, как мы это сделали, выглядит не очень удачно, потому
что у сетки точно такие же линии, как у нашего графика, поэтому
все отрезки кроме диагонального, совпали с линиями сетки, и их не видно.
Для того чтобы рисовать вспомогательные линии, то есть, например, такие линии,
как нам нужны для линии сетки, они должны быть более
светлые и менее заметные и не сливаться с исходными
линиями, которые относятся к основному графику.
Так вот, чтобы рисовать их, существует специальный
аргумент у команды \draw. Можно написать «help lines».
Запускаем и видим help lines.
Уже лучше, и при большом желании можно разглядеть, что
наша вертикальная и горизонтальная линии отличаются от остальных линий сетки.
Однако, все же, это не очень хорошо заметно,
потому что мы нарисовали линии в неправильном порядке.
TikZ рисует линии, которые мы
говорим ему рисовать, просто поверх друг друга.
То есть мы ему сначала сказали нарисовать вот эти отрезки (0,0) --
(0,1) и (0,1) -- (1,1), а потом нарисовать сетку сверху.
Ну и сетка наложилась на эти линии и сделала их едва заметными.
Давайте посмотрим, что будет, если переместить сетку в самое начало.
То есть сначала нарисовать сетку, а потом эти линии.
Ну вот, уже другое дело.
Сейчас можно видеть, что линии,
которые относятся к нашему графику,
выделяются по сравнению с линиями сетки.
Если мы хотим сделать их еще более выделяющимися, можно
рисовать их другим цветом. Например, вот так же у
команды \draw написать необязательный аргумент, например, слово red.
Название цвета можно писать просто так — TikZ это поймет.
И линия стала красной.
Теперь ее, теперь отрезки на этой линии
точно никто не спутает с линиями сетки.
Конечно, если вы печатаете на черно-белом принтере, то это плохая
идея, и вообще использовать такую сетку тогда — это плохая идея.
Но если вы хотите, например, показать презентацию или отправить PDF-файл,
который будут читать с компьютера, то использование цветов — это
вполне подходящая идея.
Так, давайте нарисуем оси координат, то есть
что-то, что показывает, где у нас начало координат и в какую...
в какую сторону смотрит...
в какую сторону происходит отсчет единичных отрезков.
Если подумать, где должны быть нарисованы
оси координат, то будет ясно, что они
должны быть нарисованы после того, как нарисована
сетка, чтобы сами оси не слились с
линиями сетки, которые на них накладываются.
Но до того, как нарисован график. Потому что если мы хотим, чтобы график был виден,
нужно, чтобы он был поверх оси координат
в том месте, где он с ней сливается.
Где у нас это место?
Вот здесь.
Как нарисовать оси координат?
Ну, во-первых, существует специальная библиотека TikZ, которая более или
менее автоматизирует работу с осями и позволяет
много настроек выбрать для них.
Ну, простой способ, которым мы сейчас
воспользуемся — это просто рисование линий,
точно таких же линий, как мы рисовали до этого, только линий со стрелочками.
Ось отличается от обычной...
обычной линии тем, что она заканчивается стрелочкой.
Для этого у
команды \draw нужно указать необязательный аргумент
вот такой: то есть .
Это означает, что стрелочка в начале, стрелочка в конце.
А теперь, как нетрудно догадаться, первая точка, из
которой нужно стартовать, — это точка (0,3), левая верхняя.
Следующая точка — это точка (0,0).
В ней нужно остановиться. И нарисовать ещё один отрезок в точку (2,0).
Не забудем точку с запятой.
И, мы видим, что оси добавились к нашей картинке.
Ну, если, например, хочется сделать оси чуть-чуть
подлиннее, то понятно, что надо сделать.
Надо вот, например, здесь не в тройку, не из тройки стартовать, а
из (3,1); и не в двойку приходить, а в (2,1).
По своему вкусу можно выбрать это увеличение длины.
Ну, вот.
И теперь оси оказались чуть длиннее, чем линии
сетки, и стрелочки, которыми они заканчиваются, лучше выделяются.
Так, давайте теперь нарисуем сюда ещё что-нибудь.
TikZ позволяет делать очень много разного,
и сейчас мы затронем только самое основное.
Но то, что я считаю важным, —
это, во-первых, научиться рисовать какие-то фигуры, которые
не являются линиями. Сейчас я покажу пример,
как это делается — как нарисовать, например, окружность.
А, во-вторых, нарисовать какой-нибудь простейший график функции,
который, который мы знаем именно как...
в аналитическом виде функцию.
Так, давайте нарисуем для начала круг.
Опять же, начинается с команды \draw.
Можно задать необязательный аргумент — цвет. Например, green.
Так. И нужно сначала указать координаты центра.
Скажем, пусть моя окружность будет с центром в точке (1,1).
Дальше нужно сказать, что это объект круг.
Смотрите, у нас в каждой команде, после того как мы
пишем \draw и какой-нибудь необязательный
аргумент, идёт, во-первых, какая-нибудь ключевая точка —
если это отрезок, то это начальная точка, если это сетка, то
это левая нижняя точка, если это окружность, то это координаты центра.
Затем мы пишем, что именно нам нужно рисовать: или grid, если это
сетка, или двойная чёрточка, если это
отрезок, или circle, например, если это окружность.
Так, ну и потом, нужно указать, какой радиус должен быть у этой окружности.
Скажем, радиус равен 0.5. То есть половина единичного отрезка.
Так, опять забыта точка с запятой.
Поначалу вы будете часто встречать эту ошибку,
потому что будете забывать её всё время.
Ну, вот. Мы видим окружность, которая как раз
так выгладит, как мы её и задумывали.
Можно указать здесь кроме того, что линии должны быть зелёными, там
же, рядом со словом green, можно
указать необязательный аргумент fill, например, yellow.
То есть, чтобы эта была уже не окружность, а круг, залитый жёлтым светом.
Вот, что мы и ожидали увидеть, то и получилось.
Только эта заливка жёлтая закрыла график, который построен из наших красных линий.
Чтобы этого не произошло, опять же, нужно переместить всё
построение этого круга туда, где эти линии ещё не построены.
Чуть выше, запустить, и теперь мы видим то, что и должны видеть.
То есть окружность оказалась под красными линиями.
Если мы хотим, чтобы линии сетки были видны также над этой заливкой, то тогда
нужно окружность переместить ещё выше, до того, как мы нарисовали линии сетки.
Так, ну, давайте теперь построим,
давайте построим график какой-нибудь функции.
В этих же осях, которые мы уже здесь ввели.
Ну, скажем, так, ну, тут должен быть аргумент
«область определения», domain, пусть она будет у нас от нуля до двух.
То есть построим график функции именно на том отрезке, который
у нас здесь вошёл в эти оси координат на нашей изначальной картинке.
Так, чтобы построить график существует команда plot.
У команды plot нужно указать два аргумента, во-первых,
переменную. Так, в моём случае это будет переменная x.
А, во-вторых, нужно указать, что за функцию мы строем.
Ну, скажем, я хочу построить функцию просто x + 2.
Давайте посмотрим, что получилось.
Поставим точку с запятой.
Ну вот, у нас есть график функции x + 2, который
построен на отрезке от нуля до двух, как мы того и хотели.
Можно построить не x плюс 2, а, скажем, x умножить на x плюс 2.
То есть x в квадрате плюс 2.
Квадратичную параболу.
Вот, ну, что и следовало ожидать, график превратился в параболу.
Можно было указать область определения, например, от минус одного до двух.
У нас там оси координат не нарисованы, но график это не помешает TikZ нарисовать.
То есть теперь наша парабола построена на
области определения от минус одного до двух.
Так, ну и хочется сделать ещё какую-нибудь подпись.
Чтобы сделать подпись нужно воспользоваться командной \node.
Я пока не буду писать здесь никаких аргументов.
Синтаксис такой, \node at, дальше координата, к которой относится
наша подпись, например, та же самая координата (1,1).
И потом в фигурных скобках собственно текст.
Тут кроме текста можно писать математику точно так же, как и всегда.
То есть я, например, напишу, что радиус равен
ноль целых пять десятых у нашей окружности.
Вот, ну, надпись появилась.
Центр этой надписи оказался в точке
(1,1), которая была указана здесь в качестве координаты.
Но пока надпись выглядит не очень хорошо.
Давайте сделаем вот что.
Во-первых, сделаем текст маленьким, то есть я напишу здесь
команду \tiny, знакомую нам с одного из предыдущих занятий.
Запустим. Так.
Ну, по крайней мере, уже не выезжает за границы.
А ещё хотелось бы сделать так, чтобы
она располагалась ниже, ниже этой точки центра окружности.
Давайте сделаем это с помощью необязательного аргумента у команды \node.
Аргумент очень простой — below, то есть «снизу».
Вот так. Если написать это, то надпись оказалась
снизу под той точкой, где мы хотели,
чтобы она оказалась. То есть точка (1,1), и под ней построим нашу надпись.
Существуют способы располагать надпись слева, справа, к северу-западу, к
северу-востоку, к юго-западу, юго-востоку от точки отсчёта.
Но, вы найдёте в материалах к этому уроку
полный список того, как можно здесь изменять её
местоположение, но, в целом, они все устроены вот так,
что у команды \node нужно указывать какой-нибудь необязательный аргумент.
Да, ну, последнее, что я хочу сделать — это увеличить всю картинку.
То есть, если мне кажется, что построение, которое я
сделал, не соответствует по масштабам, тому, что я хочу.
Скажем, слишком мелкое, то мне необязательно всё перерисовывать,
то есть необязательно, там, перепридумывать все координаты
и пересчитывать, как должны быть линии, расположенные на
моей картинке, и что нужно писать в коде.
Достаточно у \begin{tikzpicture} написать
необязательный аргумент scale=2, например.
Запустим. Вот. И вся картинка увеличилась в два раза.
Ну, как вы догадывайтесь, scale может быть не только больше единицы, но и меньше — если вы
хотите уменьшить размер картинки, если он оказался изначально слишком большим.
На этом мы закончим с этой картинкой.
В следующем видеофрагменте я покажу вам пару
примеров как можно рисовать более сложные вещи,
пользуясь готовыми примерами и модифицируя их под себя.