Đây là lệnh Graph-easyp có thể chạy trong nhà cung cấp dịch vụ lưu trữ miễn phí OnWorks bằng cách sử dụng một trong nhiều máy trạm trực tuyến miễn phí của chúng tôi như Ubuntu Online, Fedora Online, trình mô phỏng trực tuyến Windows hoặc trình mô phỏng trực tuyến MAC OS
CHƯƠNG TRÌNH:
TÊN
đồ thị dễ dàng - kết xuất/chuyển đổi đồ thị trong/từ các định dạng khác nhau
SYNOPSIS
Chuyển đổi giữa các định dạng biểu đồ và biểu đồ bố cục/kết xuất:
đồ thị dễ dàng [tùy chọn] [tệp đầu vào [tệp đầu ra]]
echo "[ Bonn ] - ô tô -> [ Berlin ]" | đồ thị dễ dàng
đồ thị dễ dàng --input=graph.dot --as_ascii
đồ thị dễ dàng --html --output=mygraph.html đồ thị.txt
đồ thị dễ dàng đồ thị.txt đồ thị.svg
đồ thị dễ dàng graph.txt --as_dot | dấu chấm -Tpng -o graph.png
đồ thị-dễ dàng graph.txt --png
đồ thị dễ dàng đồ thị.vcg --dot
đồ thị dễ dàng đồ thị.dot --gdl
đồ thị dễ dàng đồ thị.dot --graphml
TRANH LUẬN
Dưới đây là các tùy chọn quan trọng nhất, nhiều tùy chọn khác được liệt kê trong tài liệu đầy đủ:
--help In tài liệu đầy đủ, không chỉ phần tổng quan ngắn gọn này.
--input Chỉ định tên tệp đầu vào. Ví dụ:
đồ thị dễ dàng --input=input.txt
Định dạng sẽ được tự động phát hiện, ghi đè bằng --from.
--output Chỉ định tên tệp đầu ra. Ví dụ:
đồ thị dễ dàng --output=output.txt input.txt
--as Chỉ định định dạng đầu ra. Ví dụ:
đồ thị dễ dàng --as=ascii input.txt
Các định dạng hợp lệ là:
kết xuất nghệ thuật ascii ASCII
boxart Unicode Kết xuất Boxart
htmlHTML
svg Đồ họa vectơ có thể mở rộng
đồ thị ngôn ngữ DOT
bí danh dấu chấm cho "graphviz"
txt Đồ thị::Văn bản dễ dàng
văn bản vcg VCG (Trực quan hóa đồ thị trình biên dịch - một tập hợp con của GDL)
văn bản gdl GDL (Ngôn ngữ mô tả đồ thị)
GraphML GraphML
Ngoài ra, các định dạng sau được hiểu và truyền tải qua chương trình
được chỉ định bằng tùy chọn --renderer (mặc định: dấu chấm):
bmp bitmap Windows
ảnh gif
đồ họa vector hpgl HP-GL/2
jpg JPEG
pcl ngôn ngữ máy in PCL
pdf PDF
png PNGEgg
ps Phần tái bút
ps2 Postscript với các ký hiệu PDF (xem tài liệu về graphviz)
bitmap tga Targa
bitmap tif TIFF
Định dạng mặc định sẽ được xác định bởi phần mở rộng tên tệp đầu ra và là
"ascii", nếu tên tệp đầu ra chưa được đặt.
Vous sử dụng pouvez aussi ONE đối số có dạng "--as_ascii" hoặc "--ascii".
--from Chỉ định định dạng đầu vào. Các định dạng hợp lệ là:
đồ thị ngôn ngữ DOT
txt Đồ thị::Văn bản dễ dàng
văn bản VCG VCG
văn bản gdl GDL (Ngôn ngữ mô tả đồ thị)
Nếu không được chỉ định, định dạng đầu vào sẽ được tự động phát hiện.
Vous sử dụng pouvez aussi ONE đối số có dạng "--from_dot", v.v.
--trình kết xuất
Chương trình bên ngoài (mặc định: "dot") được sử dụng để hiển thị các định dạng đầu ra như
"png", "jpg", v.v. Một số lựa chọn là "neato", "twopi", "fdp" hoặc "circo".
--parse Đầu vào sẽ chỉ được phân tích cú pháp mà không tạo ra bất kỳ đầu ra nào. Hữu ích khi kết hợp
bằng "--debug=1" hoặc "--stats". Ví dụ:
đồ thị dễ dàng input.txt --parse --debug=1
--stats Viết các số liệu thống kê khác nhau về biểu đồ đầu vào vào STDERR. Sử dụng tốt nhất trong
kết hợp với "--parse":
đồ thị dễ dàng input.txt --parse --stats
--timeout Đặt thời gian chờ in giây dành cho Trình bố trí Graph::Easy tạo ra ASCII,
Đầu ra HTML, SVG hoặc boxart. Nếu bố cục không hoàn thành trong thời gian này, nó sẽ
bị hủy bỏ. Ví dụ:
đồ thị dễ dàng input.txt --timeout=500
Chuyển đổi sang DOT, VCG/GDL, GraphML hoặc văn bản thuần túy bỏ qua thời gian chờ.
Mặc định là 240 giây (4 phút).
--verbose Viết thông tin về quá trình chuyển đổi sang STDERR.
MÔ TẢ
"graph-easy" đọc mô tả về biểu đồ (một mạng lưới các nút và cạnh được kết nối, không phải
biểu đồ hình tròn :-) và sau đó chuyển đổi biểu đồ này sang định dạng đầu ra mong muốn.
Theo mặc định, đầu vào sẽ được đọc từ STDIN và đầu ra sẽ chuyển sang STDOUT. Đầu vào
dự kiến sẽ được mã hóa bằng UTF-8, đầu ra cũng sẽ là UTF-8.
Nó hiểu các định dạng sau đây là đầu vào:
Đồ thị::Dễ dàng http://bloodgate.com/perl/graph/manual/
DOT http://www.graphviz.org/
CGV http://rw4.cs.uni-sb.de/~sander/html/gsvcg1.html
GDL http://www.aisee.com/
Các định dạng được phát hiện tự động, bất kể tên tệp đầu vào là gì, nhưng bạn có thể
cũng khai báo rõ ràng thông tin đầu vào của bạn ở một định dạng cụ thể.
Đầu ra có thể là kết xuất của biểu đồ theo một trong các định dạng sau:
Đồ thị::Dễ dàng http://bloodgate.com/perl/graph/manual/
DOT http://www.graphviz.org/
CGV http://rw4.cs.uni-sb.de/~sander/html/gsvcg1.html
GDL http://www.aisee.com/
GraphML http://graphml.graphdrawing.org/
Ngoài ra, "Graph::Easy" còn có thể tạo bố cục đồ thị theo một trong các cách sau
định dạng đầu ra:
HTML SVG ASCII BOXART
Lưu ý rằng để có đầu ra SVG, trước tiên bạn cần cài đặt mô-đun Graph::Easy::As_svg.
Là một phím tắt, bạn cũng có thể chỉ định định dạng đầu ra là 'png', điều này sẽ gây ra
"graph-easy" để chuyển dữ liệu đầu vào ở định dạng graphviz sang chương trình "dot" để tạo PNG
tập tin trong một bước. Hai ví dụ sau là tương đương:
đồ thị-dễ dàng graph.txt --dot | dấu chấm -Tpng -o graph.png
đồ thị-dễ dàng graph.txt --png
KHÁC TRANH LUẬN
"graph-easy" hỗ trợ thêm một vài đối số ngoài những đối số ở trên:
--version Ghi thông tin phiên bản và thoát.
--debug=N Đặt mức gỡ lỗi (1..3). Cảnh báo, điều này sẽ tạo ra một lượng lớn khó khăn để
hiểu đầu ra trên STDERR. Ví dụ:
đồ thị dễ dàng input.txt --output=test.html --debug=1
--png, --dot, --vcg, --gdl, --txt, --ascii, --boxart, --html, --svg
Đưa ra chính xác một trong các tùy chọn này sẽ tạo ra định dạng đầu ra mong muốn.
VÍ DỤ
ASCII đầu ra
echo "[ Bonn ] -- ô tô --> [ Berlin ], [ Ulm ]" | đồ thị dễ dàng
+--------+ ô tô +------+
| Bonn | -----> | Ulm |
+--------+ +------+
|
| xe ô tô
v
+ -------- +
| Béc-lin |
+ -------- +
Đồ thị ví dụ đầu ra
echo "[ Bonn ] -- ô tô --> [ Berlin ], [ Ulm ]" | đồ thị dễ dàng --dot
đồ thị GRAPH_0 {
cạnh [ đầu mũi tên=mở ];
đồ thị [ xếp hạng=LR ];
nút [
cỡ chữ=11,
tô màu=trắng,
phong cách=đầy,
hình dạng=hộp ];
Bonn -> Ulm [ nhãn=xe hơi ]
Bonn -> Berlin [ nhãn=xe hơi ]
}
CGV ví dụ đầu ra
echo "[ Bonn ] -- ô tô --> [ Berlin ], [ Ulm ]" | đồ thị dễ dàng --vcg
đồ thị: {
title: "Biểu đồ không có tiêu đề"
nút: { tiêu đề: "Berlin" }
nút: { tiêu đề: "Bonn" }
nút: { tiêu đề: "Ulm" }
edge: { nhãn: "car" tên nguồn: "Bonn" tên mục tiêu: "Ulm" }
edge: { nhãn: "car" tên nguồn: "Bonn" tên mục tiêu: "Berlin" }
}
GDL ví dụ đầu ra
GDL (Ngôn ngữ mô tả đồ thị) là siêu tập hợp của VCG và do đó đầu ra sẽ có dạng
gần giống như VCG:
echo "[ Bonn ] -- ô tô --> [ Berlin ], [ Ulm ]" | đồ thị dễ dàng --gdl
đồ thị: {
title: "Biểu đồ không có tiêu đề"
nút: { tiêu đề: "Berlin" }
nút: { tiêu đề: "Bonn" }
nút: { tiêu đề: "Ulm" }
edge: { nhãn: "car" nguồn: "Bonn" target: "Ulm" }
edge: { nhãn: "car" nguồn: "Bonn" mục tiêu: "Berlin" }
}
GraphML ví dụ đầu ra
GraphML là XML:
echo "[ Bonn ] -- ô tô --> [ Berlin ], [ Ulm ]" | đồ thị dễ dàng --graphml
<graphml xmlns="http://graphml.graphdrawing.org/xmlns"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:lược đồLocation="http://graphml.graphdrawing.org/xmlns
http://graphml.graphdrawing.org/xmlns/1.0/graphml.xsd">
xe hơi
xe hơi
THẬN TRỌNG
Xin lưu ý rằng không thể chuyển đổi 100% từ định dạng này sang định dạng khác vì
mọi ngôn ngữ đồ thị đều có những tính năng chỉ có ở ngôn ngữ này.
Ngoài ra, quá trình chuyển đổi luôn chuyển đổi đầu vào trước tiên thành Graph::Easy
đồ thị, sau đó chuyển sang định dạng đầu ra mong muốn.
Điều này có nghĩa là chỉ các tính năng và thuộc tính thực sự hợp lệ trong Graph::Easy mới được
được hỗ trợ chưa. Làm việc để tạo ra Graph::Easy một định dạng phổ quát hỗ trợ nhiều nhất
có thể vẫn đang được tiến hành.
Các thuộc tính chưa được Graph::Easy hỗ trợ nguyên bản sẽ được chuyển đổi thành tùy chỉnh
các thuộc tính có tiền tố "x-format-", fi "x-dot-". Khi xuất ra cùng định dạng,
những thuộc tính này sẽ được chuyển đổi trở lại nhưng việc chuyển đổi sang định dạng khác sẽ làm mất các thuộc tính này.
Để biết danh sách những vấn đề còn tồn tại, vui lòng xem tệp TODO trong "Graph::Easy"
phân phối trên CPAN:
<http://search.cpan.org/~tels/Graph-Easy/>
Nếu bạn nhận thấy bất kỳ điều gì sai hoặc thiếu thuộc tính, vui lòng gửi báo cáo lỗi về
<http://rt.cpan.org/NoAuth/ReportBug.html?Hàng đợi=Biểu đồ dễ dàng>
để chúng tôi có thể khắc phục và đưa những thứ còn thiếu vào Graph::Easy!
Sử dụng Graph-easyp trực tuyến bằng dịch vụ onworks.net