دات (زبان توصیف گراف)

از ویکی‌پدیا، دانشنامهٔ آزاد
پرش به ناوبری پرش به جستجو
دات (زبان توصیف گراف)
پسوند نام پروندهs.gv
گونهزبان توصیف گراف
قالب آزاد؟بله

دات (انگلیسی: DOT) یک زبان توصیف گراف است. نمودارهای دات اغلب با پسوند gv. یا dot. ذخیره می‌شوند. پسوند gv بیشتر ترجیح داده می‌شود تا با پسوند نسخه‌های قدیمی مایکروسافت ورد (نسخه‌های پیش از سال ۲۰۰۷) که dot بود، اشتباه نشود.

برنامه‌های مختلف می‌توانند فایل‌های DOT را پردازش کنند مانند dot, neato, twopi, circo, fdp، و sfdp که می‌توانند فایل DOT را بخوانند و به شکل گرافیکی نمایش دهند. برخی دیگر، مانند gvpr, gc, acyclic, ccomps, sccmap, و tred، فایل DOT را می‌خوانند و محاسبات را روی نمودار نشان می‌دهند. در نهایت، برخی دیگر مانند lefty, dotty، و grappa یک رابط تعاملی فراهم می‌کنند. ابزار GVedit یک ویرایشگر متن را با نمایش‌دهندهٔ تصویر غیرتعاملی ترکیب می‌کند. اکثر برنامه‌ها بخشی از بسته Graphviz هستند یا از آن استفاده می‌کنند.

ساختار[ویرایش]

نوع گراف[ویرایش]

گراف‌های بدون جهت[ویرایش]

در ساده‌ترین حالت، می‌تواند برای توصیف یک گراف بدون جهت مورد استفاده قرار گیرد. یک گراف بدون جهت روابط ساده بین اشیا، مانند دوستی بین مردم را نشان می‌دهد. کلمات کلیدی گراف برای شروع یک گراف جدید استفاده می‌شود و گره‌های درون گیومه توضیح داده می‌شوند. یک خط تیره (-) برای نشان دادن روابط بین گره‌ها استفاده می‌شود.

یک گراف بدون جهت
 // خط نقطه و نام گراف اختیاری‌ست
 graph graphname {
     a -- b -- c;
     b -- d;
 }

گراف جهت‌دار[ویرایش]

مشابه گراف‌های بدون جهت، DOT می‌تواند گراف‌های جهت‌دار مانند فلوچارت و درخت‌های وابستگی را توصیف کند. ساختار برای گراف‌های بدون جهت مشابه است، به جز کلید واژه digraph برای شروع گراف استفاده می‌شود و یک پیکان (->) برای نشان دادن روابط بین گره‌ها استفاده می‌شود.

یک گراف جهت‌دار
 digraph graphname {
     a -> b -> c;
     b -> d;
 }

گراف دارای ویژگی[ویرایش]

ویژگی‌های مختلفی را می‌توان برای نمودارها، گره‌ها و یال‌ها در فایل DOT اعمال کرد. این ویژگی‌ها می‌توانند جنبه‌هایی مثل رنگ، شکل و سبک‌های خط را کنترل کنند. برای گره‌ها و یال‌ها، یک یا چند جفت صفت-ارزش بعد از یک متن و قبل از نقطه و ویرگول (که اختیاری است) قرار می‌گیرند. ویژگی‌های نمودار به عنوان جفت‌های صفت-ارزش پایین عنصر گراف مشخص می‌شوند، که در آن ویژگی‌های چندگانه با یک کاما یا با استفاده از چند مجموعه از براکت جدا می‌شوند، در حالی که مشخصه‌های گره پس از یک متن حاوی تنها نام گره، قرار داده می‌شوند، اما نه روابط بین نقاط.

یک گراف با ویژگی
 graph graphname {
     // This attribute applies to the graph itself
     size="1,1";
     // The label attribute can be used to change the label of a node
     a [label="Foo"];
     // Here, the node shape is changed.
     b [shape=box];
     // These edges both have different line properties
     a -- b -- c [color=blue];
     b -- d [style=dotted];
     // [style=invis] hides a node.
   }

برچسب‌های HTML گونه فقط در نسخه‌های Graphviz که بعد از اواسط نوامبر ۲۰۰۳ منتشر شدند، در دسترس هستند.

توضیح درون کد[ویرایش]

دات از سبک C و ++C و توضیحات چند گانه استفاده می‌کند. همچنین اگر # در ابتدای خط باشد آن خط را در نظر نمی‌گیرد.

 // This is a single line comment.
 /* This is a
    multiple line
    comment. */
 # Lines like this are also ignored.

منابع[ویرایش]

پیوند به بیرون[ویرایش]