Изменения документа Диаграммы Схемы Графики

Редактировал(а) Coluns 31.03.2023

От версии 7.1
отредактировано hrapitan
на 11.03.2023
Изменить комментарий: К данной версии нет комментариев
К версии 6.1
отредактировано hrapitan
на 11.03.2023
Изменить комментарий: К данной версии нет комментариев

Сводка

Подробности

Свойства страницы
Содержимое
... ... @@ -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