ນີ້ແມ່ນຄໍາສັ່ງ graph-easyp ທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນຫຼາຍໆບ່ອນເຮັດວຽກອອນໄລນ໌ຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator
ໂຄງການ:
NAME
graph-easy - render/convert graphs in/from ຮູບແບບຕ່າງໆ
ສະຫຼຸບສັງລວມ
ແປງລະຫວ່າງຮູບແບບກຣາຟແລະຮູບແບບ / render ກຣາຟ:
graph-easy [ຕົວເລືອກ] [ໄຟລ໌ເຂົ້າ [outputfile]]
echo "[ບອນ] - ລົດ -> [ເບີລິນ]" | ກຣາຟ-ງ່າຍ
graph-easy --input=graph.dot --as_ascii
graph-easy --html --output=mygraph.html graph.txt
graph-easy graph.txt graph.svg
graph-easy graph.txt --as_dot | dot -Tpng -o graph.png
graph-easy graph.txt --png
graph-easy graph.vcg --dot
graph-easy graph.dot --gdl
graph-easy graph.dot --graphml
ການໂຕ້ຖຽງ
ນີ້ແມ່ນທາງເລືອກທີ່ສໍາຄັນທີ່ສຸດ, ເພີ່ມເຕີມແມ່ນຢູ່ໃນເອກະສານເຕັມທີ່:
--help ພິມເອກະສານສະບັບເຕັມ, ບໍ່ພຽງແຕ່ພາບລວມສັ້ນນີ້.
--input ລະບຸຊື່ໄຟລ໌ປ້ອນຂໍ້ມູນ. ຕົວຢ່າງ:
graph-easy --input=input.txt
ຮູບແບບຈະຖືກກວດພົບໂດຍອັດຕະໂນມັດ, ລົບລ້າງມັນດ້ວຍ --from.
--output ລະບຸຊື່ໄຟລ໌ຜົນຜະລິດ. ຕົວຢ່າງ:
graph-easy --output=output.txt input.txt
--as ລະບຸຮູບແບບຜົນຜະລິດ. ຕົວຢ່າງ:
graph-easy --as=ascii input.txt
ຮູບແບບທີ່ຖືກຕ້ອງແມ່ນ:
ascii ການສະແດງສິລະປະ ASCII
boxart Unicode ການສະແດງ Boxart
html HTML
svg ກຣາບຟິກເວບເຕີທີ່ສາມາດຂະຫຍາຍໄດ້
graphviz ພາສາ DOT
dot alias ສໍາລັບ "graphviz"
txt Graph:: ຂໍ້ຄວາມງ່າຍ
vcg VCG (Visualizing Compiler Graphs - ຊຸດຍ່ອຍຂອງ GDL) ຂໍ້ຄວາມ
gdl GDL (Graph Description Language) ຂໍ້ຄວາມ
graphml GraphML
ນອກຈາກນັ້ນ, ຮູບແບບດັ່ງຕໍ່ໄປນີ້ໄດ້ຖືກເຂົ້າໃຈແລະທໍ່ໂດຍຜ່ານໂຄງການ
ລະບຸດ້ວຍຕົວເລືອກ --renderer (ຄ່າເລີ່ມຕົ້ນ: dot):
bmp Windows bitmap
gif GIF
hpgl HP-GL/2 ຮູບພາບ vector
jpg JPEG
ພາສາເຄື່ອງພິມ PCL PCL
pdf PDF
png PNG
ps Postscript
ps2 Postscript ກັບ PDF notations (ເບິ່ງເອກະສານ graphviz)
tga Targa bitmap
tif TIFF bitmap
ຮູບແບບເລີ່ມຕົ້ນຈະຖືກກໍານົດໂດຍການຂະຫຍາຍຊື່ໄຟລ໌ຜົນຜະລິດ, ແລະແມ່ນ
"ascii", ຖ້າຊື່ໄຟລ໌ຜົນຜະລິດບໍ່ໄດ້ຕັ້ງ.
ທ່ານຍັງສາມາດໃຊ້ ONE ການໂຕ້ຖຽງຂອງຮູບແບບ "--as_ascii" ຫຼື "--ascii".
--from ລະບຸຮູບແບບການປ້ອນຂໍ້ມູນ. ຮູບແບບທີ່ຖືກຕ້ອງແມ່ນ:
graphviz ພາສາ DOT
txt Graph:: ຂໍ້ຄວາມງ່າຍ
ຂໍ້ຄວາມ vcg VCG
gdl GDL (Graph Description Language) ຂໍ້ຄວາມ
ຖ້າບໍ່ໄດ້ລະບຸ, ຮູບແບບການປ້ອນຂໍ້ມູນຈະຖືກກວດພົບໂດຍອັດຕະໂນມັດ.
ທ່ານຍັງສາມາດໃຊ້ ONE ການໂຕ້ຖຽງຂອງແບບຟອມ "--from_dot", ແລະອື່ນໆ.
--renderer
ໂຄງການພາຍນອກ (ຄ່າເລີ່ມຕົ້ນ: "dot") ໃຊ້ເພື່ອສະແດງຮູບແບບຜົນຜະລິດເຊັ່ນ
"png", "jpg" ແລະອື່ນໆບາງທາງເລືອກແມ່ນ "neato", "twopi", "fdp" ຫຼື "circo".
--parse Input ຈະຖືກວິເຄາະເທົ່ານັ້ນ, ໂດຍບໍ່ມີການຜະລິດຜົນຜະລິດໃດໆ. ມີປະໂຫຍດໃນການປະສົມປະສານ
ດ້ວຍ "--debug=1" ຫຼື "--stats". ຕົວຢ່າງ:
graph-easy input.txt --parse --debug=1
--stats ຂຽນສະຖິຕິຕ່າງໆກ່ຽວກັບເສັ້ນສະແດງການປ້ອນຂໍ້ມູນໃສ່ STDERR. ໃຊ້ດີທີ່ສຸດໃນ
ປະສົມປະສານກັບ "--parse":
graph-easy input.txt --parse --stats
--timeout ກໍານົດເວລາຫມົດເວລາ in ວິນາທີ ສໍາລັບກາຟ:: layouter ງ່າຍທີ່ສ້າງ ASCII,
ຜົນຜະລິດ HTML, SVG ຫຼື boxart. ຖ້າການຈັດວາງບໍ່ສໍາເລັດໃນເວລານີ້, ມັນຈະ
ເອົາລູກອອກ. ຕົວຢ່າງ:
graph-easy input.txt --timeout=500
ການປ່ຽນເປັນ DOT, VCG/GDL, GraphML ຫຼືຂໍ້ຄວາມທຳມະດາບໍ່ສົນໃຈເວລາໝົດເວລາ.
ຄ່າເລີ່ມຕົ້ນແມ່ນ 240 ວິນາທີ (4 ນາທີ).
--verbose ຂຽນຂໍ້ມູນກ່ຽວກັບຂະບວນການປ່ຽນເປັນ STDERR.
ລາຍລະອຽດ
"graph-easy" ອ່ານຄໍາອະທິບາຍຂອງກາຟ (ເຄືອຂ່າຍເຊື່ອມຕໍ່ຂອງ nodes ແລະ edges, ບໍ່ແມ່ນ a
pie chart :-) ແລະຫຼັງຈາກນັ້ນປ່ຽນເປັນຮູບແບບຜົນຜະລິດທີ່ຕ້ອງການ.
ໂດຍຄ່າເລີ່ມຕົ້ນ, ວັດສະດຸປ້ອນຈະຖືກອ່ານຈາກ STDIN, ແລະຜົນຜະລິດຈະໄປ STDOUT. ວັດສະດຸປ້ອນ
ຄາດວ່າຈະຖືກເຂົ້າລະຫັດໃນ UTF-8, ຜົນຜະລິດຈະເປັນ UTF-8.
ມັນເຂົ້າໃຈຮູບແບບຕໍ່ໄປນີ້ເປັນການປ້ອນຂໍ້ມູນ:
Graph ::ງ່າຍ http://bloodgate.com/perl/graph/manual/
DOT http://www.graphviz.org/
VCG http://rw4.cs.uni-sb.de/~sander/html/gsvcg1.html
GDL http://www.aisee.com/
ຮູບແບບຕ່າງໆໄດ້ຖືກກວດພົບໂດຍອັດຕະໂນມັດ, ໂດຍບໍ່ຄໍານຶງເຖິງຊື່ໄຟລ໌ທີ່ປ້ອນ, ແຕ່ວ່າທ່ານສາມາດເຮັດໄດ້
ປະກາດຢ່າງຈະແຈ້ງການປ້ອນຂໍ້ມູນຂອງທ່ານໃຫ້ຢູ່ໃນຮູບແບບສະເພາະໃດໜຶ່ງ.
ຜົນຜະລິດສາມາດເປັນ dump ຂອງກາຟໃນຮູບແບບດັ່ງຕໍ່ໄປນີ້:
Graph ::ງ່າຍ http://bloodgate.com/perl/graph/manual/
DOT http://www.graphviz.org/
VCG http://rw4.cs.uni-sb.de/~sander/html/gsvcg1.html
GDL http://www.aisee.com/
GraphML http://graphml.graphdrawing.org/
ນອກຈາກນັ້ນ, "Graph::Easy" ຍັງສາມາດສ້າງໂຄງຮ່າງຂອງກຣາຟໄດ້ໃນອັນໜຶ່ງຕໍ່ໄປນີ້.
ຮູບແບບຜົນຜະລິດ:
HTML SVG ASCII BOXART
ໃຫ້ສັງເກດວ່າສໍາລັບຜົນຜະລິດ SVG, ທ່ານຈໍາເປັນຕ້ອງຕິດຕັ້ງໂມດູນ Graph::Easy::As_svg ທໍາອິດ.
ເປັນທາງລັດ, ທ່ານຍັງສາມາດກໍານົດຮູບແບບຜົນຜະລິດເປັນ 'png', ນີ້ຈະເຮັດໃຫ້ເກີດ
"graph-easy" ເພື່ອທໍ່ການປ້ອນຂໍ້ມູນໃນຮູບແບບ graphviz ໄປຫາໂຄງການ "dot" ເພື່ອສ້າງ PNG.
ໄຟລ໌ໃນຂັ້ນຕອນດຽວ. ສອງຕົວຢ່າງຕໍ່ໄປນີ້ແມ່ນທຽບເທົ່າ:
graph-easy graph.txt --dot | dot -Tpng -o graph.png
graph-easy graph.txt --png
ອື່ນໆ ການໂຕ້ຖຽງ
"graph-easy" ສະຫນັບສະຫນູນການໂຕ້ຖຽງເພີ່ມເຕີມຈໍານວນຫນຶ່ງນອກເຫນືອໄປຈາກທີ່ມາຈາກຂ້າງເທິງ:
--version ຂຽນຂໍ້ມູນສະບັບ ແລະອອກ.
--debug=N ຕັ້ງລະດັບດີບັກ (1..3). ຄໍາເຕືອນ, ນີ້ຈະສ້າງຈໍານວນ huge ຂອງຍາກທີ່ຈະ
ເຂົ້າໃຈຜົນຜະລິດໃນ STDERR. ຕົວຢ່າງ:
graph-easy input.txt --output=test.html --debug=1
--png, --dot, --vcg, --gdl, --txt, --ascii, --boxart, --html, --svg
ໃຫ້ແນ່ນອນຫນຶ່ງໃນທາງເລືອກເຫຼົ່ານີ້, ຜະລິດຮູບແບບຜົນຜະລິດທີ່ຕ້ອງການ.
ຕົວຢ່າງ
ASCII output
echo "[ Bonn ] -- ລົດ --> [ Berlin ], [ Ulm ]" | ກຣາຟ-ງ່າຍ
+--------+ ລົດ +-----+
| ບອນ | -----> | Ulm |
+--------+ +-----+
|
| ລົດ
v
+--------+
| ເບີລິນ |
+--------+
Graphviz ຍົກຕົວຢ່າງ output
echo "[ Bonn ] -- ລົດ --> [ Berlin ], [ Ulm ]" | graph-easy --dot
ຕົວເລກ GRAPH_0 {
edge [ arrowhead=open ];
graph [ rankdir=LR ] ;
node [
fontsize=11,
fillcolor=ສີຂາວ,
style=ຕື່ມ,
shape=box];
Bonn -> Ulm [ label=car ]
Bonn -> Berlin [ label=car ]
}
VCG ຍົກຕົວຢ່າງ output
echo "[ Bonn ] -- ລົດ --> [ Berlin ], [ Ulm ]" | graph-easy --vcg
ເສັ້ນສະແດງ: {
ຫົວຂໍ້: "ເສັ້ນສະແດງທີ່ບໍ່ມີຫົວຂໍ້"
node: { title: "Berlin" }
node: { title: "Bonn" }
node: { title: "Ulm" }
edge: { label: "car" sourcename: "Bonn" targetname: "Ulm" }
edge: { label: "car" sourcename: "Bonn" targetname: "Berlin" }
}
GDL ຍົກຕົວຢ່າງ output
GDL (Graph Description Language) ເປັນ superset ຂອງ VCG, ແລະດັ່ງນັ້ນຜົນຜະລິດຈະເບິ່ງ
ເກືອບຄືກັນກັບ VCG:
echo "[ Bonn ] -- ລົດ --> [ Berlin ], [ Ulm ]" | graph-easy --gdl
ເສັ້ນສະແດງ: {
ຫົວຂໍ້: "ເສັ້ນສະແດງທີ່ບໍ່ມີຫົວຂໍ້"
node: { title: "Berlin" }
node: { title: "Bonn" }
node: { title: "Ulm" }
edge: { label: "car" source: "Bonn" target: "Ulm" }
edge: { label: "car" source: "Bonn" target: "Berlin" }
}
GraphML ຍົກຕົວຢ່າງ output
GraphML ແມ່ນ XML:
echo "[ Bonn ] -- ລົດ --> [ Berlin ], [ Ulm ]" | graph-ງ່າຍ --graphml
<graphml xmlns="http://graphml.graphdrawing.org/xmlns"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://graphml.graphdrawing.org/xmlns
http://graphml.graphdrawing.org/xmlns/1.0/graphml.xsd">
ລົດ
ລົດ
ຂໍ້ຄວນລະວັງ
ກະລຸນາຮັບຊາບວ່າມັນເປັນໄປບໍ່ໄດ້ທີ່ຈະປ່ຽນ 100% ຈາກຮູບແບບຫນຶ່ງໄປຫາຮູບແບບອື່ນນັບຕັ້ງແຕ່
ທຸກໆພາສາກາຟມີຄຸນສົມບັດທີ່ເປັນເອກະລັກສະເພາະຂອງພາສານີ້.
ນອກຈາກນັ້ນ, ຂະບວນການປ່ຽນໃຈເຫລື້ອມໃສສະເຫມີປ່ຽນການປ້ອນຂໍ້ມູນທໍາອິດເຂົ້າໄປໃນ Graph::Easy
ເສັ້ນສະແດງ, ແລະຫຼັງຈາກນັ້ນກັບຮູບແບບຜົນຜະລິດທີ່ຕ້ອງການ.
ນີ້ຫມາຍຄວາມວ່າພຽງແຕ່ລັກສະນະແລະຄຸນລັກສະນະທີ່ຖືກຕ້ອງໃນ Graph::Easy ແມ່ນ
ສະຫນັບສະຫນູນຍັງ. ເຮັດວຽກໃນການເຮັດໃຫ້ Graph::ງ່າຍດາຍຮູບແບບທົ່ວໄປສະຫນັບສະຫນູນຫຼາຍເທົ່າທີ່
ຄວາມເປັນໄປໄດ້ແມ່ນຍັງຢູ່ໃນຄວາມຄືບຫນ້າ.
ຄຸນລັກສະນະທີ່ຍັງບໍ່ໄດ້ສະຫນັບສະຫນູນໂດຍພື້ນຖານໂດຍ Graph::ງ່າຍແມ່ນໄດ້ຮັບການປ່ຽນເປັນການກໍານົດເອງ
ຄຸນລັກສະນະທີ່ມີຄໍານໍາຫນ້າ "x-format-", fi "x-dot-". ເມື່ອຜົນຜະລິດເປັນຮູບແບບດຽວກັນ,
ເຫຼົ່ານີ້ຖືກແປງຄືນ, ແຕ່ການປ່ຽນເປັນຮູບແບບທີ່ແຕກຕ່າງກັນຈະສູນເສຍຄຸນລັກສະນະເຫຼົ່ານີ້.
ສໍາລັບບັນຊີລາຍຊື່ຂອງບັນຫາທີ່ຍັງຄົງຢູ່, ກະລຸນາເບິ່ງໄຟລ໌ TODO ໃນ "Graph::Easy"
ການແຜ່ກະຈາຍໃນ CPAN:
<http://search.cpan.org/~tels/Graph-Easy/>
ຖ້າຫາກທ່ານສັງເກດເຫັນມີຫຍັງຜິດພາດ, ຫຼືພາດຄຸນລັກສະນະ, ກະລຸນາຍື່ນລາຍງານຂໍ້ຜິດພາດກ່ຽວກັບການ
<http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Graph-Easy>
ດັ່ງນັ້ນພວກເຮົາສາມາດແກ້ໄຂມັນແລະລວມເອົາສິ່ງທີ່ຂາດຫາຍໄປເຂົ້າໄປໃນ Graph::Easy!
ໃຊ້ graph-easyp ອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net