Изменения документа Диаграммы Схемы Графики
Редактировал(а) Coluns 31.03.2023
Сводка
-
Свойства страницы (1 изменено, 0 добавлено, 0 удалено)
Подробности
- Свойства страницы
-
- Содержимое
-
... ... @@ -2,7 +2,7 @@ 2 2 {{toc start="2"/}} 3 3 {{/box}} 4 4 5 -== **Возможности платформы**==5 +== Возможности платформы == 6 6 7 7 Платформа XWiki предоставляет богатый инструментарий для работы с разнообразными диаграммами, схемами и графиками. При этом у нас есть возможность рисовать их в графическом редакторе, визуализировать на основе данных, либо использовать языки построения диаграмм. Все эти фичи реализованы с помощью специальных расширений и макросов. 8 8 ... ... @@ -14,9 +14,8 @@ 14 14 15 15 Рассмотрим все эти инструменты по порядку. 16 16 17 ----- 18 18 19 -== **Отрисовка диаграмм в визуальном редакторе draw.io**==18 +== Отрисовка диаграмм в визуальном редакторе draw.io == 20 20 21 21 Расширение "**Diagram**" позволяет рисовать диаграммы и схемы непосредственно в XWiki, используя визуальный редактор draw.io. Несколько вводных о нем дано в [[статье "В XWiki можно легко создавать диаграммы">>doc:Stati.Metodiki-primeneniia-XWiki.V-XWiki-mozhno-legko-sozdavat-diagrammy.WebHome]], рассмотрим его здесь немного подробнее. 22 22 ... ... @@ -53,9 +53,8 @@ 53 53 54 54 Вот таким образом мы можем использовать встроенный визуальный редактор диаграмм draw.io. 55 55 56 ----- 57 57 58 -== **Работа с диаграммами на языке UML**==56 +== Работа с диаграммами на языке UML == 59 59 60 60 Кроме рисования в визуальном редакторе draw.io, платформа XWiki позволяет создавать диаграммы, используя [[язык UML>>url:https://ru.wikipedia.org/wiki/UML]]. 61 61 ... ... @@ -65,224 +65,5 @@ 65 65 [[image:2023-02-18_17-41-18.png]] 66 66 67 67 68 -То же самое можно сделать, перейдя с помощью кнопки [[image:2021-09-24_100802.png]] "**Источник**" в режим разметки и вставив код макроса: 69 69 70 -(% bis_skin_checked="1" class="box" %) 71 -((( 72 -~{~{plantuml}} 73 -//описание диаграммы на языке UML// 74 -~{~{/plantuml}} 75 -))) 76 - 77 -Адрес сервера обработки указывать не нужно, он задан в админке XWIKI. Но если вдруг после сохранения статьи визуализация не происходит — проверьте код UML и, если он в порядке, попробуйте указать адрес сервера обработки UML вручную. 78 - 79 -=== Примеры использования PlantUML === 80 - 81 -==== Блок-схема ==== 82 - 83 -{{example}} 84 -{{plantuml}} 85 - 86 -@startuml 87 - 88 -start 89 - 90 -:Check eax.me for new posts; 91 - 92 -while (There are new posts?) is (Yes); 93 - :Read one post; 94 - :Share; 95 - :Leave comments; 96 -endwhile (No); 97 - 98 -stop 99 - 100 -@enduml 101 - 102 -{{/plantuml}} 103 -{{/example}} 104 - 105 - 106 -==== (% id="cke_bm_1213S" style="display:none" %) (%%)Диаграмма классов ==== 107 - 108 -{{example}} 109 -{{plantuml}} 110 - 111 -@startuml 112 - 113 -CanTakeDamage <|-- Hero 114 -Hero <|-- Mage 115 -Hero <|-- Warrior 116 - 117 -enum Spell { 118 - FIREBALL 119 - THUNDERBOLT 120 -} 121 - 122 -enum Weapon { 123 - SWORD 124 - BOW 125 -} 126 - 127 -interface CanTakeDamage { 128 - TakeDamage(num int) int 129 -} 130 - 131 -class Hero { 132 - Name: string 133 - HP: int 134 - XP: int 135 - 136 - IsDead() bool 137 - IsMage() bool 138 - IsWarrior() bool 139 - Attack(enemy CanTakeDamage) 140 -} 141 - 142 -class Warrior { 143 - Weapon: Weapon 144 - ArrowsNumber: int 145 -} 146 - 147 -class Mage { 148 - Spellbook: []Spell 149 - Mana: int 150 -} 151 - 152 -@enduml 153 - 154 -{{/plantuml}} 155 -{{/example}} 156 - 157 - 158 -==== Диаграммы последовательности ==== 159 - 160 -{{example}} 161 -{{plantuml}} 162 - 163 -@startuml 164 - 165 -actor User 166 -participant Nginx 167 -participant Application 168 -database PostgreSQL 169 - 170 -autonumber 1 171 -User -> Nginx: GET / HTTP/1.0 172 -Nginx -> Application: GET / HTTP/1.0 173 -Application -> PostgreSQL: SELECT * FROM ... 174 -PostgreSQL --> Application: (A LOT OF DATA) 175 -Application --> Nginx: HTTP/1.0 200 OK 176 -Nginx --> User: HTTP/1.0 200 OK 177 - 178 -@enduml 179 - 180 -{{/plantuml}} 181 -{{/example}} 182 - 183 - 184 -==== Диаграмма прецедентов ==== 185 - 186 -{{example}} 187 -{{plantuml}} 188 - 189 -@startuml 190 -:Главный админ: as Admin 191 -(Работа с приложением) as (Use) 192 - 193 -Пользователь -> (Работа) 194 -Пользователь --> (Use) 195 - 196 -Admin ---> (Use) 197 - 198 -note right of Admin : Это пример заметки. 199 - 200 -note right of (Use) 201 - Заметки могут занимать 202 - несколько строчек 203 -end note 204 - 205 -note "Эта заметка будет указывать\nсразу на несколько элементов." as N2 206 -(Работа) .. N2 207 -N2 .. (Use) 208 -@enduml 209 - 210 -{{/plantuml}} 211 -{{/example}} 212 - 213 - 214 -==== Временная диаграмма ==== 215 - 216 -{{example}} 217 -{{plantuml}} 218 - 219 -@startuml 220 -scale 5 as 150 pixels 221 - 222 -clock clk with period 1 223 -binary "enable" as en 224 -binary "R/W" as rw 225 -binary "data Valid" as dv 226 -concise "dataBus" as db 227 -concise "address bus" as addr 228 - 229 -@6 as :write_beg 230 -@10 as :write_end 231 - 232 -@15 as :read_beg 233 -@19 as :read_end 234 - 235 - 236 -@0 237 -en is low 238 -db is "0x0" 239 -addr is "0x03f" 240 -rw is low 241 -dv is 0 242 - 243 -@:write_beg-3 244 - en is high 245 -@:write_beg-2 246 - db is "0xDEADBEEF" 247 -@:write_beg-1 248 -dv is 1 249 -@:write_beg 250 -rw is high 251 - 252 - 253 -@:write_end 254 -rw is low 255 -dv is low 256 -@:write_end+1 257 -rw is low 258 -db is "0x0" 259 -addr is "0x23" 260 - 261 -@12 262 -dv is high 263 -@13 264 -db is "0xFFFF" 265 - 266 -@20 267 -en is low 268 -dv is low 269 -@21 270 -db is "0x0" 271 - 272 -highlight :write_beg to :write_end #Gold:Write 273 -highlight :read_beg to :read_end #lightBlue:Read 274 - 275 -db@:write_beg-1 <-> @:write_end : setup time 276 -db@:write_beg-1 -> addr@:write_end+1 : hold 277 -@enduml 278 - 279 - 280 -{{/plantuml}} 281 -{{/example}} 282 - 283 - 284 ----- 285 - 286 -== **Визуализация данных с помощью Chart Extension** == 287 - 288 288