Skip to main content

Создание схем

Создание схем для передачи информации с помощью диаграмм и графиков

Сведения о создании схем

Схемы можно создавать в Markdown с помощью четырех разных синтаксисов: русалок, geoJSON, topoJSON и STL ASCII. Отрисовка диаграмм доступна в GitHub Issues, GitHub Discussions, запросах на вытягивание, вики-страницах и файлах Markdown.

Создание схем mermaid

Mermaid — это инструмент наподобие Markdown, который преобразует текст в схемы. Например, Mermaid может отображать блок-схемы, схемы последовательностей, круговые диаграммы и др. Дополнительные сведения см. в документации по Mermaid.

Чтобы создать схему Mermaid, добавьте фрагмент разметки Mermaid в блок кода с ограждением, указав идентификатор языка mermaid. Дополнительные сведения о создании блоков кода см. в разделе "Создание и выделение блоков кода".

Например, можно создать блок-диаграмму, указав значения и стрелки.

Here is a simple flow chart:

```mermaid
graph TD;
    A-->B;
    A-->C;
    B-->D;
    C-->D;
```

Снимок экрана: отрисованная блок-диаграмма русалки с четырьмя прямоугольниками с метками A, B, C и D. Стрелки простираются от A до B, B до D, A до C и C.

Примечание. Если вы используете синтаксис Mermaid в GitHub, то при запуске сторонних подключаемых модулей Mermaid могут возникать ошибки.

Проверка версии русалки

Чтобы гарантировать, что GitHub поддерживает синтаксис русалки, проверьте используемую в настоящее время версию mermaid.

```mermaid
  info
```

Создание карт GeoJSON и TopoJSON

Для создания интерактивных карт можно использовать синтаксис GeoJSON или TopoJSON. Чтобы создать карту, добавьте разметку GeoJSON или TopoJSON в блок кода с ограждением, указав идентификатор синтаксиса geojson или topojson. Дополнительные сведения см. в разделе Создание и выделение блоков кода.

Note

Карты GeoJSON и TopoJSON недоступны в поддоменах GHE.com, например octocorp.ghe.com.

Использование GeoJSON

Например, можно создать карту, указав координаты.

```geojson
{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "id": 1,
      "properties": {
        "ID": 0
      },
      "geometry": {
        "type": "Polygon",
        "coordinates": [
          [
              [-90,35],
              [-90,30],
              [-85,30],
              [-85,35],
              [-90,35]
          ]
        ]
      }
    }
  ]
}
```

Снимок экрана: отображенная карта GeoJSON юго-восточной США с фиолетовым прямоугольным наложением на части Алабамы и Миссисипи.

Использование TopoJSON

Например, можно создать карту TopoJSON, указав координаты и фигуры.

```topojson
{
  "type": "Topology",
  "transform": {
    "scale": [0.0005000500050005, 0.00010001000100010001],
    "translate": [100, 0]
  },
  "objects": {
    "example": {
      "type": "GeometryCollection",
      "geometries": [
        {
          "type": "Point",
          "properties": {"prop0": "value0"},
          "coordinates": [4000, 5000]
        },
        {
          "type": "LineString",
          "properties": {"prop0": "value0", "prop1": 0},
          "arcs": [0]
        },
        {
          "type": "Polygon",
          "properties": {"prop0": "value0",
            "prop1": {"this": "that"}
          },
          "arcs": [[1]]
        }
      ]
    }
  },
  "arcs": [[[4000, 0], [1999, 9999], [2000, -9999], [2000, 9999]],[[0, 0], [0, 9999], [2000, 0], [0, -9999], [-2000, 0]]]
}
```

Снимок экрана: отображенная карта TopoJSON частей Индонезии, Сингапура и Малайзии с синей точкой, фиолетовым прямоугольным наложением и синим зигзагом.

Дополнительные сведения о работе с файлами .geojson .topojson см. в разделе "Работа с файлами, не связанными с кодом".

Создание трехмерных моделей STL

Синтаксис ASCII STL можно использовать непосредственно в Markdown для создания интерактивных трехмерных моделей. Чтобы отобразить модель, добавьте разметку ASCII STL в блок кода с ограждением, указав идентификатор синтаксиса stl. Дополнительные сведения см. в разделе Создание и выделение блоков кода.

Например, можно создать простую трехмерную модель:

```stl
solid cube_corner
  facet normal 0.0 -1.0 0.0
    outer loop
      vertex 0.0 0.0 0.0
      vertex 1.0 0.0 0.0
      vertex 0.0 0.0 1.0
    endloop
  endfacet
  facet normal 0.0 0.0 -1.0
    outer loop
      vertex 0.0 0.0 0.0
      vertex 0.0 1.0 0.0
      vertex 1.0 0.0 0.0
    endloop
  endfacet
  facet normal -1.0 0.0 0.0
    outer loop
      vertex 0.0 0.0 0.0
      vertex 0.0 0.0 1.0
      vertex 0.0 1.0 0.0
    endloop
  endfacet
  facet normal 0.577 0.577 0.577
    outer loop
      vertex 1.0 0.0 0.0
      vertex 0.0 1.0 0.0
      vertex 0.0 0.0 1.0
    endloop
  endfacet
endsolid
```

Снимок экрана: трехмерная модель синей пирамиды на вершине сетки черных линий на белой земле. Параметры выбора "Wireframe", "Surface Angle" или "Solid" отображаются внизу.

Дополнительные сведения о работе с файлами .stl см. в разделе "Работа с файлами, не связанными с кодом".