Windows で Graphviz をインストールして開始する方法のチュートリアル

Windows で Graphviz をインストールして開始する方法のチュートリアル

ダウンロードとインストール環境変数の設定インストール環境変数の設定確認基本的な描画の紹介グラフディグラフ複雑な例Python の操作

良いツールを発見することは、新しい世界を発見するようなものです。時々、論文や各種専門書に掲載されている鮮やかなイラストがどのように描かれているのか興味が湧きます。例外なく、それらは描画ツールを巧みに使用した結果です。

ダウンロードしてインストールし、環境変数を設定する

インストール

Windows版ダウンロードアドレス: http://www.graphviz.org/Download_windows.php

這里寫圖片描述

msiファイルをダブルクリックし、次へをクリックし続けます (インストール パスを覚えておいてください。パス情報は後で環境変数を構成するときに使用されます)。インストールが完了すると、Windows のスタート メニューにショートカットが作成されます。デフォルトのショートカットはデスクトップには配置されません。

這里寫圖片描述

環境変数の設定

graphviz インストール ディレクトリの下の bin フォルダーを Path 環境変数に追加します。

這里寫圖片描述

這里寫圖片描述

確認する

Windows コマンドライン インターフェイスに入り、 dot -versionと入力して Enter キーを押します。graphviz の関連バージョン情報が表示されれば、インストールと構成は成功です。

這里寫圖片描述

基本的な描画チュートリアル

Windows で graphviz エディタ gvedit を開き、次のドット スクリプト言語を記述して、gv 形式のテキスト ファイルとして保存します。次に、コマンド ライン インターフェイスに入り、ドット コマンドを使用して gv ファイルを png グラフィック ファイルに変換します。

ドット D:\test\1.gv -Tpng -o image.png

グラフ

グラフの使用法--関係性の説明

グラフpic1 { 
 a -- b
 a -- b
 b -- [色=青]
} 

這里寫圖片描述

有字

使用->関係を説明する

有向グラフ pic2 { 
 a -> b
 a -> b
 b -> a [スタイル=塗りつぶし 色=青]
} 

這里寫圖片描述

複雑な例

有向グラフ スタートゲーム {
  label="ゲームリソースの更新プロセス"
  ランクディレクトリ="TB"
  start[label="ゲームを開始" shape=circle style=filled]
  ifwifi[label="ネットワーク環境によってWIFIかどうかが決まる" shape=diamond]
  needupdate[label="更新が必要なリソースがあるかどうか" shape=diamond]
  startslientdl[label="サイレントダウンロード" shape=box]
  enterhall[label="ゲームロビーに入る" shape=box]

  enterroom[label="部屋に入る" shape=box]
  resourceuptodate[label="リソースが不完全" shape=diamond]
  プレイ開始[label="通常ゲーム" shape=circle fillcolor=blue]
  警告[label="プレイヤーにアップデートするかどうかを通知する" shape=diamond]
  startdl[label="ダウンロードインターフェイスに入る" shape=box]
  //{rank=same; needupdate, enterhall}

  {shape=diamond; ifwifi、needupdate}

  開始 -> ifwifi
  ifwifi->needupdate[label="yes"]
  ifwifi->enterhall[label="no"]
  needupdate->startslientdl[label="yes"]
  startslientdl->enterhall
  更新が必要->enterhall[label="no"]

  エンターホール -> エンタールーム
  部屋に入る->リソースの最新情報
  resourceuptodate -> 警告[label="yes"]
  リソース更新 -> 再生開始[ラベル="no"]
  警告 -> startdl[label="ダウンロードの確認"]
  警告 -> enterhall[label="ダウンロードをキャンセル"]
  startdl -> enterhall[label="ダウンロードをキャンセル"]
  startdl -> startplay[label="ダウンロードが完了しました"]
} 

這里寫圖片描述

Pythonとのやりとり

Graphviz の強力で便利な関係図/フローチャートの描画方法は、機械学習におけるDecision Treeの表示方法を容易に思い起こさせます。幸いなことに、scikit-learn は.dotファイルを生成するためのインターフェースを提供しています。具体的な操作は次のとおりです。

Python編集環境では:

from sklearn.tree import export_graphviz # 関数をインポートします # tree はトレーニング済みモデルを表します。つまり、DecisionTreeClassifier インスタンスの fit(X_train, y_train) メソッドが呼び出されています export_graphviz(tree, out_file='tree.dot', 
    feature_names=['花びらの長さ', '花びらの幅'])

Windowsのコマンドラインインターフェイスに入り、 tree.dotがあるパスに切り替えて、実行します。

ドット -Tpng ツリー.ドット -o ツリー.png 

這里寫圖片描述

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Python は graphviz を呼び出して構造化グラフ ネットワークの例を描画します
  • export_graphvizを使用してツリーを視覚化する問題を解決する
  • Pythonで決定木を実装し、Graphvizを使用して視覚化する例
  • Python ベースの Youdao 翻訳プロセスの図
  • VSCode の使い方と VSCode での Python プログラムのデバッグ方法に関するグラフィカル チュートリアル
  • PythonはGraphvizを使用してフローチャートを描画します

<<:  インスタンス化されたオブジェクトパラメータによるMySQLクエリ例の説明

>>:  jsプロキシの原理の詳細な説明

推薦する

Tomcatを使用して共有ライブラリを設定し、同じjarを共有する

デプロイされるプロジェクトが増えるにつれて、Tomcat にデプロイされるリリース パッケージも増え...

JS配列の一般的な方法とテクニックを学び、マスターになりましょう

目次splice() メソッドjoin() メソッド逆() メソッドevery() メソッド削減()...

フロントエンドJavaScriptの動作原理

目次1. JavaScript エンジンとは何ですか? 2. V8エンジン3. ランタイム環境4. ...

Zabbix で複数の JVM プロセスを監視する方法

1. シナリオの説明:私たちの環境ではマイクロサービスを使用しています。各プログラムには個別のプロセ...

ドロップダウンメニューを実現するためのHTML+CSS

1. ドロップダウンリストの例コードは次のとおりです。 <!doctypehtml> ...

Javascript の基礎: 演算子とフロー制御の詳細な説明

目次1. オペレーター1.1 算術演算子1.2 インクリメント演算子とデクリメント演算子1.3 比較...

vuex名前空間の使用

目次Vuex は単一の状態ツリーを使用するため、すべてのアプリケーション状態が比較的大きなオブジェク...

Vue3.0+vite2は動的非同期コンポーネントの遅延読み込みを実装します

目次Viteプロジェクトを作成するコンポーネントの作成Viteプロジェクトを作成するパフォーマンスが...

1 つ以上の Linux インスタンスから SSH キー ペアのバインドを解除します。

キーペアの分離1 つ以上の Linux インスタンスから SSH キー ペアのバインドを解除します。...

Vueグローバルカスタム命令の実践 モーダルドラッグ

目次背景実装のアイデア成果を達成する背景最近取り組んでいるプロジェクトは、Vue2 で構築されたプロ...

Node.js管理ツールnvmの詳細なインストール手順

いいえnvmはnodejsの複数のバージョンを管理する役割を担っています。インストール: https...

Vueでドラッグ可能なコンポーネントを実装する方法

この記事では、Vueでドラッグ可能なコンポーネントとドラッグ可能なコンポーネントを実装する方法を参考...

CentOS VPS に SSH 経由で MySQL をインストールする方法

yum install mysql-serverと入力します。続行するにはYを押してくださいインスト...

8 JSのreduce使用例とreduce操作方法

reduceメソッドは配列の反復メソッドです。 mapやfilterとは異なり、 reduceメソッ...

MySQL 5.7 でパスワードを忘れた場合の解決方法の詳細な説明

環境: [root@centos7 ~]# uname -r 3.10.0-514.el7.x86_...