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プロキシの原理の詳細な説明

推薦する

Promise カプセル化 wx.request メソッド

前回の記事では、Promise を使用して小さなプログラム wx.request をカプセル化する実...

ウェブページ読み込み時に左右にジャンプする原因の分析と解決

最近、ウェブサイトを設計するときにこの問題に遭遇しています。メンバーセンターを設計し、コンテンツを ...

vue-element-admin グローバル読み込み待機中

最近の要件:グローバルロード、すべてのインターフェースはロード待機機能を表示するかどうかを手動で制御...

JS 1次元配列を3次元配列に変換する例

今日、CSDN の Q&A セクションで友人が質問をしているのを見ました。彼は 1 次元配列...

NodeJSのモジュール性に関する詳細な説明

目次1. はじめに2. 本文2.1 モジュールとは何ですか? 2.2 解決2.3、require.r...

HTML リスト タグ dl、ul、ol の使用例

コードをコピーコードは次のとおりです。 <!--リストタグ: <dl>: 階層リス...

入力タイプとは何を意味し、入力を制限する方法

入力を制限する一般的な方法1. ボタンが押されたときに点線のボックスを消すには、入力に属性値hide...

DockerにRedisをインストールし、設定ファイルとして起動する詳細な説明

更新: 最近、サーバーがマイニング ウイルスによってハッキングされたことが判明しました。これは、おそ...

Vue の自動書式設定の改行保存の詳細な説明

ネットで変更方法をいろいろ調べたのですが、うまくいきませんでした。後で大物から見て削除しました。フォ...

面接で聞かれる可能性のあるCSSに関する質問

この記事は、100 回書かれ、質問された CSS の質問を記念するためのものです。聞く: CSS セ...

MySQL で重複時間を削除して時間差を計算する実装

目次必要:ドライブ:アイデア:成し遂げる:個人的には、実際の開発ではストアド プロシージャの使用はお...

{{ }} で関数を直接使用する WeChat アプレットの例

序文WeChat アプレット開発 (ネイティブ wxml、wxcss) で、{{ }} 内で直接メソ...

VM VirtualBox 仮想マシンのマウント共有フォルダ

一つの環境CentOS 7にVMware Toolsをインストールしてホストの共有フォルダへのアクセ...

CSS3 は、跳ねるボール効果を実現する Web アニメーションを作成します。

基本的な準備この実装には、クラス名が ball である単純な div が必要です。 HTMLコード:...

MySQL ログの設定と表示方法

MySQL には次のログがあります。エラーログ: -log-errクエリログ: -logスロークエリ...