2

私は現在、yEdのJava内にグラフをダンプしようとしています。フォーマットにgraphmlを使おうとしていますが、非常に面倒です。特に、ノードのサイズはラベルのサイズに合わせてサイズ変更されないため、ほとんどの場合、ラベルは実際のファイルよりも大きくなります。

実際に各ノードの幅と高さを指定せずに、これを修正するためにできることはありますか?

ありがとう

4

1 に答える 1

2

方法はありますが、その方法は非公式のAPIを使用しており、現在のリリース(執筆時点では3.9.2)以外のリリースでは機能しない可能性があります。

GraphMLで、グラフレベルで次のキーを追加します。

  <g:key id="ppkey" for="graph" yfiles.type="postprocessors"/>
  <g:graph id="G" edgedefault="directed">
    <g:data key="ppkey">
      <y:Postprocessors>
        <y:Processor class="A.A.A.A.A">
          <y:Option name="IGNORE_WIDTHS" value="false"/>
          <y:Option name="IGNORE_HEIGHTS" value="true"/>
          <y:Option name="ADAPT_TO_MAXIMUM_NODE" value="false"/>
        </y:Processor>
      </y:Postprocessors>
    </g:data>
  </g:graph>

ご覧のとおり、「AAAAA」は明らかに難読化されたクラス名であり、ビルド間で変更されたり、スクリプトが破損したりする可能性があります。

この不便の理由は実際には非常に単純です。yEdは自動化された方法で使用されることは想定されておらず(ライセンスは純粋に自動化されたユースケースを明示的に禁止しています)、したがってインタラクティブな使用に最適化されています。したがって、ボタンをクリックすることは実際には意図されています。なんで?yEdは強力な商用ライブラリに基づく無料の製品であり、パワーユーザーがライブラリのライセンスを購入し、ある意味でyEdの開発とサポートを後援しているため、無料であるためです。プログラムでその能力を実際に活用する必要がある場合は、ライブラリのライセンスを直接確認する必要があります。

そうは言っても、Excelのインポートを試すこともできます。この手順は自動的に実行されますが、開始するにはExcelファイルを作成する必要があります。

于 2012-07-06T18:24:45.873 に答える