Awesome-latex-drawing — это коллекция из более чем 30 примеров академических рисунков для использования LaTeX, включая байесовские сети, построение графиков функций, графические модели, тензорную структуру и технические основы.
LaTeX — это высококачественная система верстки, доступная в виде бесплатного программного обеспечения, широко используемая в последние годы для создания академической графики. Его популярность связана с его способностью обрабатывать сложные иллюстрации с помощью специальных символов и математических уравнений, что делает его идеальным для рисования подробной графики в исследованиях.
В этом проекте представлены несколько графических изображений, созданных с использованием LaTeX, с примерами, которым легко следовать на Overleaf, популярной онлайн-платформе LaTeX. Если вам интересно, вы можете изучить и воспроизвести наши примеры на Overleaf на сайте overleaf.com.
pgfplots
tikz
для матричной структуры tikz-3dplot
для тензорной структуры Ищете хорошие примеры рисования в LaTeX? Вот более 30 иллюстраций, показывающих, как рисовать в LaTaX.
LaTeX предоставляет несколько мощных специализированных пакетов и инструментов, таких как tikz
для создания гибких графических моделей. Байесовские сети представляют собой семейство графических моделей, состоящих из переменных (обычно обозначаемых узлами) и отношений зависимости (обычно обозначаемых стрелками). К счастью, tikz
есть специальная библиотека для рисования байесовских сетей и ориентированных графов факторов.
Еще один набор инструментов на Python: https://docs.daft-pgm.org/en/latest/
Этот пример взят из следующей статьи:
который показывает байесовскую сеть модели байесовской CP-факторизации (BCPF). Чтобы нарисовать этот пример байесовской сети, необходимо выполнить некоторые предварительные действия:
- Цибинь Чжао, Лицин Чжан, Анджей Цихоцкий (2015). Байесовская CP-факторизация неполных тензоров с автоматическим определением ранга. Транзакции IEEE по анализу шаблонов и машинному интеллекту, 37 (9): 1751–1763.
preamble
:documentclass
как standalone
, например, documentclass[border = 0.1cm]{standalone}
с границей 0,1 см,tikz
, то есть usepackage{tikz}
, и используйте библиотеку tikz
например usetikzlibrary{bayesnet}
которая является важным инструментом для рисования байесовских сетей и ориентированных графов факторов,tikz
с помощью команды tikzstyle{}
,usepackage{amsfonts, amsmath, amssymb}
.body
:begin{tikzpicture} end{tikzpicture}
чтобы начать рисовать,node
для определения узлов и текстовых полей в байесовской сети,path
для определения стрелок в байесовской сети,plate
для определения пластин в байесовской сети.Пожалуйста, нажмите на изображение и ознакомьтесь с исходным кодом.
Этот пример взят из следующей статьи:
который показывает байесовскую сеть модели байесовской гауссовой CP-факторизации (BGCP). Чтобы нарисовать этот пример байесовской сети, необходимо выполнить некоторые предварительные действия:Синьюй Чен, Чжаочэн Хэ, Лицзюнь Сунь (2019). Подход байесовского тензорного разложения для вменения пространственно-временных данных о трафике. Транспортные исследования, часть C: Новые технологии, 98: 73-84.
preamble
:documentclass
как standalone
, например, documentclass[border = 0.1cm]{standalone}
с границей 0,1 см,tikz
, то есть usepackage{tikz}
, и используйте библиотеку tikz
например usetikzlibrary{bayesnet}
которая является важным инструментом для рисования байесовских сетей и ориентированного графа факторов,tikz
с помощью команды tikzstyle{}
,usepackage{amsmath, amsfonts, amssymb}
.body
:begin{tikzpicture} end{tikzpicture}
чтобы начать рисовать,node
для определения узлов и текстовых полей в байесовской сети,path
для определения стрелок в байесовской сети,plate
для определения пластин в байесовской сети.Пожалуйста, нажмите на изображение и ознакомьтесь с исходным кодом. Если вас интересует исходная байесовская сеть BGCP, описанная в статье, посетите BGCP.tex.
Этот пример взят из следующей статьи:
который показывает байесовскую сеть модели байесовской расширенной тензорной факторизации (BATF). Чтобы нарисовать этот пример байесовской сети, необходимо выполнить некоторые предварительные действия:Синьюй Чен, Чжаочэн Хэ, Исянь Чен, Юхуань Лу, Цзявэй Ван (2019). Условный расчет недостающих данных о трафике и обнаружение закономерностей с помощью байесовской расширенной модели тензорной факторизации. Транспортные исследования, часть C: Новые технологии, 104: 66-77.
preamble
:documentclass
как standalone
, например, documentclass[border = 0.1cm]{standalone}
с границей 0,1 см,tikz
, то есть usepackage{tikz}
, и используйте библиотеку tikz
например usetikzlibrary{bayesnet}
которая является важным инструментом для рисования байесовских сетей и ориентированного графа факторов,tikz
с помощью команды tikzstyle{}
,usepackage{amsmath, amsfonts, amssymb}
.body
:begin{tikzpicture} end{tikzpicture}
чтобы начать рисовать,node
для определения узлов и текстовых полей в байесовской сети,path
для определения стрелок в байесовской сети,plate
для определения пластин в байесовской сети.Пожалуйста, нажмите на изображение и ознакомьтесь с исходным кодом.
Этот пример взят из следующей статьи:
который показывает байесовскую сеть модели байесовской временной матричной факторизации (BTMF). Чтобы нарисовать этот пример байесовской сети, необходимо выполнить некоторые предварительные действия:Синьюй Чен, Лицзюнь Сунь (2021). Байесовская временная факторизация для многомерного прогнозирования временных рядов. Транзакции IEEE по анализу шаблонов и машинному интеллекту, 44 (9): 4659-4673.
preamble
:documentclass
как standalone
, например, documentclass[border = 0.1cm]{standalone}
с границей 0,1 см,tikz
, то есть usepackage{tikz}
, и используйте библиотеку tikz
например usetikzlibrary{bayesnet}
которая является важным инструментом для рисования байесовских сетей и ориентированного графа факторов,tikz
с помощью команды tikzstyle{}
,usepackage{amsmath, amsfonts, amssymb}
.body
:begin{tikzpicture} end{tikzpicture}
чтобы начать рисовать,node
для определения узлов и текстовых полей в байесовской сети,path
для определения стрелок в байесовской сети,plate
для определения пластин в байесовской сети.Пожалуйста, нажмите на изображение и ознакомьтесь с исходным кодом. Вместо многомерного векторного процесса авторегрессии по временным факторам мы также можем использовать одномерный процесс авторегрессии для восстановления BTMF. Сеть Beyasian доступна по адресу btmf_net.png, вы также можете просмотреть исходный код btmf_net.tex.
Эти два примера показывают частично наблюдаемую матрицу и тензор временных рядов соответственно. Чтобы нарисовать оба примера, мы можем выполнить следующие шаги:
коды preamble
:
documentclass
как standalone
,tikz
. коды body
:
begin{tikzpicture} end{tikzpicture}
чтобы начать рисовать,node
для определения узлов и текстовых полей в графической модели,path
для определения стрелок в графической модели. Эти два примера показывают прогнозирование временных рядов при наличии пропущенных значений. Чтобы нарисовать оба примера, мы можем выполнить следующие шаги:
коды preamble
:
documentclass
как standalone
,tikz
. коды body
:
begin{tikzpicture} end{tikzpicture}
чтобы начать рисовать,node
для определения узлов и текстовых полей в графической модели,path
для определения стрелок в графической модели. Эти два примера показывают неориентированные и циркулянтные графы на выборках реляционных данных с определенными степенями. Чтобы нарисовать оба примера, мы можем выполнить следующие шаги:
коды preamble
:
documentclass
как standalone
,tikz
. коды body
:
begin{tikzpicture} end{tikzpicture}
чтобы начать рисовать,node
для определения узлов,path
для определения стрелок. Этот пример взят из следующей статьи:
Синьюй Чен, Чжанхун Ченг, Николя Сонье, Лицзюнь Сунь (2022). Лапласово сверточное представление для расчета временных рядов трафика. Препринт arXiv arXiv: 2212.01529.
который дает графическую иллюстрацию лапласовой сверточной модели для вменения временных рядов. Чтобы нарисовать пример, мы можем выполнить следующие шаги:
preamble
:documentclass
как standalone
,tikz
.body
:begin{tikzpicture} end{tikzpicture}
чтобы начать рисовать,begin{axis} end{axis}
и addplot
для рисования координат,node
и path
для рисования узлов и стрелок.pgfplots
Построение графика функций В этих двух примерах показаны функция плотности вероятности (PDF) и кумулятивная функция плотности (CDF) распределения Эрланга соответственно. Чтобы нарисовать пример, необходимо выполнить несколько шагов:
preamble
:documentclass
как standalone
,pgfplots
,pgfplotsset{}
по своему усмотрению.body
:begin{tikzpicture} end{tikzpicture}
чтобы начать рисовать,begin{axis} end{axis}
для рисования функции,addplot
чтобы определить функцию рисования. В этом примере показан PDF нормального распределения с различными средними значениями и дисперсиями. Чтобы нарисовать этот пример, нужно выполнить несколько шагов:
preamble
:documentclass
как standalone
,pgfplots
,pgfplotsset{}
по своему усмотрению.body
:pgfmathdeclarefunction
, чтобы определить функцию PDF нормального (гауссовского) распределения,begin{tikzpicture} end{tikzpicture}
чтобы начать рисовать,begin{axis} end{axis}
для рисования функции,addplot
чтобы определить функцию рисования.Эти два примера показывают PDF и совместную PDF логнормальных распределений соответственно. Ниже приведены некоторые рекомендуемые материалы для подражания примерам:
Эти два примера показывают итерационный процесс сопряженного градиента для решения системы линейных уравнений.
Эти два примера показывают случайные и неслучайные пропущенные шаблоны. Чтобы нарисовать оба примера, мы можем выполнить следующие шаги:
preamble
:documentclass
как standalone
,tikz
и pgfplots
,begin{filecontents} end{filecontents}
для хранения данных.body
:begin{tikzpicture} end{tikzpicture}
чтобы начать рисовать,begin{axis} end{axis}
для рисования функции,addplot
для рисования данных. В этом примере показаны четыре последовательности, состоящие из функций синуса и косинуса. Рассматривая эти последовательности как временные ряды, мы можем видеть два вида временной динамики: одна связана с функцией синуса, а другая — с функцией косинуса. Чтобы нарисовать этот пример, мы можем выполнить следующие шаги:
preamble
:documentclass
как standalone
,pgfplots
,pgfplotsset{}
по своему усмотрению.body
:pgfmathdeclarefunction
, чтобы определить функцию PDF нормального (гауссовского) распределения,begin{tikzpicture} end{tikzpicture}
чтобы начать рисовать,begin{axis} end{axis}
для рисования функции,addplot
чтобы определить функцию рисования. Этот пример иллюстрирует механизм прогнозирования временных рядов потоковых данных в нашем проекте базы трассировки. Чтобы нарисовать этот пример, мы можем выполнить следующие шаги:
preamble
:documentclass
как standalone
,tikz
и pgfplots
,pgfplotsset{}
по своему усмотрению.body
:begin{tikzpicture} end{tikzpicture}
чтобы начать рисовать,begin{axis} end{axis}
для определения графики,addplot
, чтобы определить метки по некоторым координатам и указать цвет этих меток.tikz
для матричной структуры В этом примере представлена графическая иллюстрация проблемы прогнозирования многомерных временных рядов с пропущенными значениями. Чтобы нарисовать этот пример, мы можем выполнить следующие шаги:
preamble
:documentclass
как standalone
,tikz
.body
:Depth
, Width
и Height
с помощью newcommand
,begin{tikzpicture} end{tikzpicture}
чтобы начать рисовать,draw
, filldraw
и node
для определения прямоугольников и узлов. Этот пример дает графическую иллюстрацию факторизации временной матрицы. Чтобы нарисовать этот пример, мы можем выполнить следующие шаги:
preamble
:documentclass
как standalone
,tikz
.body
:begin{tikzpicture} end{tikzpicture}
чтобы начать рисовать,draw
и filldraw
для установки узлов и прямоугольников. В этом примере дается графическая иллюстрация прогнозирования скользящих временных рядов с факторизацией временной матрицы. Чтобы нарисовать этот пример, мы можем выполнить следующие шаги:
preamble
:documentclass
как standalone
,tikz
.body
:begin{tikzpicture} end{tikzpicture}
чтобы начать рисовать,draw
и filldraw
для установки узлов и прямоугольников.tikz-3dplot
для тензорной структуры Этот пример дает графическую иллюстрацию тензора третьего порядка. Чтобы нарисовать этот пример, мы можем выполнить следующие шаги:
preamble
:documentclass
как standalone
,tikz
и tikz-3dplot
.body
:Depth
, Width
и Height
с помощью newcommand
,begin{tikzpicture} end{tikzpicture}
чтобы начать рисовать,draw
для определения узлов. Этот пример дает графическую иллюстрацию классической факторизации CP-тензора на тензоре третьего порядка. Чтобы нарисовать этот пример, мы можем выполнить следующие шаги:
preamble
:documentclass
как standalone
,tikz
и tikz-3dplot
.body
:Depth
, Width
и Height
с помощью newcommand
,begin{tikzpicture} end{tikzpicture}
чтобы начать рисовать,draw
для определения узлов. В этом примере представлена графическая иллюстрация модели расширенной тензорной факторизации. Чтобы нарисовать этот пример, мы можем выполнить следующие шаги:
preamble
:documentclass
как standalone
,tikz
и tikz-3dplot
.body
:Depth
, Width
и Height
с помощью newcommand
,begin{tikzpicture} end{tikzpicture}
чтобы начать рисовать,draw
для определения узлов. В этом примере представлена графическая иллюстрация задачи завершения тензора и ее структуры, включая организацию данных и завершение тензора, в которой частично наблюдаются измерения трафика. Чтобы нарисовать этот пример, мы можем выполнить следующие шаги:
preamble
:documentclass
как standalone
,tikz
и tikz-3dplot
.body
:Depth
, Width
и Height
с помощью newcommand
,begin{tikzpicture} end{tikzpicture}
чтобы начать рисовать,draw
для определения узлов. В этом примере представлена графическая иллюстрация модели завершения авторегрессионного тензора низкого ранга. Чтобы нарисовать этот пример, мы можем выполнить следующие шаги:
preamble
:documentclass
как standalone
,tikz
и tikz-3dplot
.body
:Depth
, Width
и Height
с помощью newcommand
,begin{tikzpicture} end{tikzpicture}
чтобы начать рисовать,node
, path
, plate
для определения узлов, стрелок и пластин,draw
для определения узлов. В этом примере представлена графическая иллюстрация процесса определения порога сингулярного значения тензорных данных с унитарным преобразованием. Чтобы нарисовать этот пример, мы можем выполнить следующие шаги:
preamble
:documentclass
как standalone
,tikz
и tikz-3dplot
.body
:Depth
, Width
и Height
с помощью newcommand
,begin{tikzpicture} end{tikzpicture}
чтобы начать рисовать,node
для определения узлов,draw
для определения узлов,filldraw
чтобы определить цвета прямоугольников. В этом примере представлена графическая иллюстрация модели завершения тензора низкого ранга. Чтобы нарисовать этот пример, мы можем выполнить следующие шаги:
preamble
:documentclass
как standalone
,tikz
и tikz-3dplot
,algorithm2e
,usetikzlibrary{positioning, matrix, fit, calc}
.body
:begin{algorithm} end{algorithm}
для определения алгоритма,matrix
для размещения компонентов,begin{scope} end{scope}
для размещения слоев. В этом примере представлена графическая иллюстрация модели тензорной регрессии низкого ранга. Чтобы нарисовать этот пример, мы можем выполнить следующие шаги:
preamble
:documentclass
как standalone
,tikz
и tikz-3dplot
.body
:Depth
, Width
и Height
с помощью newcommand
,begin{tikzpicture} end{tikzpicture}
чтобы начать рисовать,draw
для определения узлов.В этом примере показана точность вменения некоторых матричных и тензорных моделей. Чтобы нарисовать этот пример, мы можем выполнить следующие шаги:
preamble
:documentclass
как standalone
,tikz
.body
:begin{tikzpicture} end{tikzpicture}
чтобы начать рисовать,draw
для определения узлов,pgfuseimage
для импорта изображений. Большинство из этих примеров взяты из наших статей:
Синьюй Чен, Чжанхун Ченг, ХаньЦинь Цай, Николя Сонье, Лицзюнь Сунь (2024). Лапласово сверточное представление для вменения временных рядов трафика . Транзакции IEEE по знаниям и инженерии данных, 36 (11): 6490-6502. [Препринт] [DOI] [Слайды] [Данные и код Python]
Синьюй Чен, Лицзюнь Сунь (2022). Байесовская временная факторизация для многомерного прогнозирования временных рядов . Транзакции IEEE по анализу шаблонов и машинному интеллекту, 44 (9): 4659-4673. [Препринт] [DOI] [Слайды] [Данные и код Python]
Синьюй Чен, Мэнъин Лэй, Николя Сонье, Лицзюнь Сунь (2022). Авторегрессионное тензорное завершение низкого ранга для вменения пространственно-временных данных о трафике . Транзакции IEEE в интеллектуальных транспортных системах, 23 (8): 12301-12310. [Препринт] [DOI] [Данные и код Python] (также частично принято в семинар MiLeTS Workshop на KDD 2021, см. документ семинара)
Синьюй Чен, Исянь Чен, Николя Сонье, Лицзюнь Сунь (2021). Масштабируемое тензорное обучение низкого ранга для вменения пространственно-временных данных о трафике . Транспортные исследования, часть C: Новые технологии, 129: 103226. [Препринт] [DOI] [Данные] [Код Python]
Синьюй Чен, Лицзюнь Сунь (2020). Авторегрессионное тензорное завершение низкого ранга для прогнозирования многомерных временных рядов . Препринт arXiv arXiv: 2006.10436. [Препринт] [Данные и код Python]
Синьюй Чен, Цзиньмин Ян, Лицзюнь Сунь (2020). Невыпуклая модель завершения тензора низкого ранга для вменения пространственно-временных данных о трафике . Транспортные исследования, часть C: Новые технологии, 117: 102673. [Препринт] [DOI] [Данные и код Python]
Синьюй Чен, Чжаочэн Хэ, Исянь Чен, Юхуань Лу, Цзявэй Ван (2019). Условный расчет недостающих данных о дорожном движении и обнаружение закономерностей с помощью байесовской расширенной модели тензорной факторизации . Транспортные исследования, часть C: Новые технологии, 104: 66-77. [DOI] [Слайды] [Данные] [Код Matlab] [Код Python]
Синьюй Чен, Чжаочэн Хэ, Лицзюнь Сунь (2019). Подход байесовского тензорного разложения для вменения пространственно-временных данных о трафике . Транспортные исследования, часть C: Новые технологии, 98: 73-84. [Препринт] [DOI] [Данные] [Код Matlab] [Код Python]