ASCIIで図を作成する


141

次のようなASCIIダイアグラムを作成するために使用できるプログラムを探しています。

    +---------+
    |         |                        +--------------+
    |   NFS   |--+                     |              |
    |         |  |                 +-->|   CacheFS    |
    +---------+  |   +----------+  |   |  /dev/hda5   |
                 |   |          |  |   +--------------+
    +---------+  +-->|          |  |
    |         |      |          |--+
    |   AFS   |----->| FS-Cache |
    |         |      |          |--+
    +---------+  +-->|          |  |
                 |   |          |  |   +--------------+
    +---------+  |   +----------+  |   |              |
    |         |  |                 +-->|  CacheFiles  |
    |  ISOFS  |--+                     |  /var/cache  |
    |         |                        +--------------+
    +---------+

Debianで利用可能なパッケージであることが望ましいです。上に表示される素晴らしい図は、Linuxカーネルのドキュメントから引用したものです。手作業で作成されたとは信じられません。それらを作成するツールが必要です。


6
DrawItプラグインvimを使用して、この種の図を内部から描画できます。
dawud 14

12
「手作業で作成されたとは信じられません。作成するには何らかのツールが必要です。」特にスケッチなどの図のソースから作業している場合は、手作業で作成されたと簡単に信じられます。5分以上かかることはありません。
goldilocks 14

2
ちょっとした常識を使って頭の中で最初に視覚化すれば、実際に簡単にできるので、手作業で作成されたと簡単に信じられます。もちろん、Ascioなどの場合よりも数分長くかかります。
マイルルーティング

回答:


138

アスキー

私は数年間アスキーを使ってきました。このサイトの図の多くは、を使用して作成しましたasciio

  vncviewer         .-,(  ),-.    
   __  _         .-(          )-.           gateway           vncserver 
  [__]|=|  ---->(    internet    )-------> __________ ------> ____   __ 
  /::/|_|        '-(          ).-'        [_...__...°]       |    | |==|
                     '-.( ).-'                               |____| |  |
                                                             /::::/ |__|

GUIは次のようになります。

           アスキーのSS

注:すべては、右クリックメニューとショートカットキーから実行されます。

それを描く

DrawItプラグインvimと一緒に使用して、基本的な図を作成することもできます。VimエディターでASCII図面を作成する方法(ボックス、線、楕円、テキストファイル内の矢印を描く)というタイトルの記事で、インストールおよび使用方法の概要を確認できます。

アスキーフロー

asciiflowと呼ばれるWebサイトがあります。これはおそらく、これらのタイプの図を描画する最も簡単な方法です。

   SS#2

JavE

Javaで記述されたもう1つのツールJavEは、このようなASCIIダイアグラムも作成できます。

                                 ,'''''''''''''|
                                 | Controller  |
                                 |             |
                                 '`'i''''''''''
                                  ,'        `.
                                ,'            `.
                               -                -
                     ,'''''''''''''|      ,''''''''''''`.
                     |    Model    |______|    View     |
                     |             |      |             |
                      `''''''''''''       '`'''''''''''''

GUIは次のようになります。

   SS#2

資源


1
あなたは追加することができますdiiagrams.comをしたい場合は
I3ck

リンクからのasciioのWindowsインストーラーは機能しなくなりました。インストーラーは、404エラーが発生したと言ってから中止します。代わりにasciiflowを使用しました。
ジョセフ238

1
@ Joseph238-これはUnixとLinuxのWebサイトであるため、フィードバックに感謝します。ほとんどの通行人がそれほど気にするかどうかはわかりません。それへのリンクに出くわした場合plsは私達に知らせます。
slm

2
たぶん、textik.comに関するメモを追加してください。
アイザック

27

見ていアーティスト・モードまたはピクチャーモード(も参照Emacsのために、このスクリーンキャスト)。また、ditaaをチェックアウトすることもできます。


1日時:彼らはグラフィカルな形式に変換することができるように、誰かが手でこれらを行う可能性がありますので、「ditaa」...
ゴルディロックス

2
はい、ditaaはasciioとの素晴らしい組み合わせです。
マーティンヒーメルス14

スクリーンキャストリンクは無効です。
jcubic

24

別の答えが見つかりました。完全に使用できるかどうかはわかりませんが、GNU roff(groff)にはPic言語用のプロセッサとasciiポストプロセッサがあることを忘れないでください。したがって、そのようなことを試してみることができます(Linuxを使用している場合は、おそらくすべてが既にインストールされているはずです)。次を含むtest.roffというファイルを作成します。

.PS
box "box1";
line
box "box2";
.PE

次に、入力します:groff -Tascii -p test.roff取得する必要があります:

+------+     +------+
|      +-----|      |
| box1 |     |box2  |
+------+     +------+

よろしく。


使用して制御文字削除することがありますgroff -Tlatin1 -P-c -P-b -P-u
mlt

groffMac OS Xにプリインストールされています:)
スリダールサルノバト

15

多分あなたはgraph-easyに興味があるでしょう。

例:

   echo "[ Bonn ] -- car --> [ Berlin ], [ Ulm ]" | graph-easy

生成するもの:

    +--------+  car   +-----+
    |  Bonn  | -----> | Ulm |
    +--------+        +-----+
      |
      | car
      v
    +--------+
    | Berlin |
    +--------+

次のコマンドでインストールできます。

wget http://search.cpan.org/CPAN/authors/id/T/TE/TELS/graph/Graph-Easy-0.64.tar.gz
tar -xzf Graph-Easy-0.64.tar.gz
cd Graph-Easy-0.64
perl Makefile.PL
make test
sudo make install
PATH=$PATH:/opt/local/libexec/perl5.12/sitebin/graph-easy

(最上行と最終行の2つのバージョン番号に注意してください-変更される場合があります)

lddotdothostのページには、いくつかの素晴らしいスクリーンショットがあります(両方のツールがのラッパーであるためgraph-easy)。


1
最新バージョンがGithubでホストされるようになりました:github.com/ironcamel/Graph-Easy
Sridhar Sarnobat

1
これはGraphvizによく似ていると思いますが、GraphvizにはASCII出力がなく、残念です。
スリダールサルノバト

graph-easyはGraphvizと同じDOT言語を使用します
ivarec

-1

Mac(元のポスターではない)を使用している人には、Monodrawと呼ばれる非常に便利なツールがあります。もちろん、非常に洗練されており、強力で直感的であるという事実のために数ドルを支払うつもりですが、これが頻繁に行うものである場合、それは利用可能な便利なツールであり、10ドルはあなたが時間と比較してピーナッツですセーブ。これを頻繁に行わない場合は、無料の試用版が利用できるため、準備は完了です。SVGにエクスポートすることもできます

いいえ、会社で働いていません。私はただの幸せなユーザーです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.