web-dev-qa-db-ja.com

TTYのグラフィック

コマンドラインでのみ作業する必要がある何かが発生しました。私の主な仕事はプログラミング(主にFortranとOctave)であり、プロットを表示する必要があります。

不完全な例として:

オクターブを開いてezplot('sin(x)')と入力すると、X11 Display Environmentが設定されておらず、ディスプレイを開くことができないことが出力されます。 TTYでグラフィックを表示する方法はありますか?

明らかに、私は素晴らしいグラフィックを期待していませんが、私は時々正しい軌道に乗っているかどうかを確認する必要があります。

私の現在のアルゴリズムは非常に非効率的です。私 print -djpeg foo.jpegそしてそれを私の隣のコンピューターにscpします。それを借りて続行します。

8
user14517

Ttyに表示したい一連の.jpeg画像がある場合は、 aview またはasciiviewを使用できます。画像を使用してasciiviewを呼び出すと、画像をaviewに渡して表示する前に、画像を.pnm形式に変換します(NetPBMやImageMagicなどの外部プログラムを使用)。 .pnmは、画像を文字のセットとして表すために使用されるascii画像形式です。この形式で画像を表示するには、次を使用します。

$ asciiview foo.jpeg

または、最初に.pnmコピーを保存するには:

$ convert foo.jpeg foo.pnm
$ aview foo.pnm

これらはaalibからのドライバーをサポートします。

5
user13742

別のttyでXサーバーを実行し、必要なときにそれに切り替えることはできませんか? Xを実行しているマシンが隣にある場合は、 X11転送 を使用してそこに表示させることができます。

5
psusi

最も直接的な答えは、 jp2a :JPEGからASCIIを使用することです。

多分あなたは有名なアスキーアートライブラリを使うことができます: libcacaターミナルの映画 も見ることができるので、単純なjpegでも機能するはずです。

5
Coren

sixel グラフィックを表示できるターミナルプログラム(たとえば、xtermまたはその派生物の1つ)を使用している場合は、変換できます。 PySixel を使用して画像をsixel形式に変換して出力するか、sixelコマンドを直接出力するフィルターを統合します。

このようにして、ターミナルにトゥルーカラーグラフィックス(ASCIIではない)が表示されます。

2
dirkt

グラフは次のように直接描画できますASCII with gnuplot;
端末タイプをdumbに設定します。必要なのは、これだけです。

$ gnuplot
gnuplot> set terminal dumb
Terminal type set to 'dumb'
Options are 'feed  size 79, 24'
gnuplot> plot sin(x)



    1 ++---------------***---------------+---**-----------+--------**-----++
      +                *  *              +  *  **         +  sin(x) ****** +
  0.8 ++              *   *                 *    *               *    *   ++
      |              *     *               *     *               *     *   |
  0.6 *+             *      *              *     *               *     *  ++
      |*             *      *             *       *             *       *  |
  0.4 +*            *       *             *       *             *       * ++
      |*            *        *            *        *           *        *  |
  0.2 +*           *         *            *        *           *         *++
    0 ++*          *          *          *         *          *          *++
      | *          *          *         *           *         *           *|
 -0.2 ++ *         *          *         *           *         *           *+
      |  *        *           *        *             *        *           *|
 -0.4 ++ *        *            *       *             *       *            *+
      |  *       *              *      *             *      *              *
 -0.6 ++  *      *              *      *             *      *             +*
      |    *    *               *     *               *     *              |
 -0.8 ++   *    *                *   *                 *   *              ++
      +     *  *       +         **  *   +             *  *                +
   -1 ++-----**--------+-----------**----+--------------***---------------++
     -10              -5                 0                5                10

gnuplot>
2
Volker Siegel

LinuxまたはFreeBSDのコンソールTTYを使用している場合は、svgalibを使用して、X11を使用せずにグラフィックモードで画像を表示できます。ライブラリはコンソールをグラフィックモードに切り替えることができます。X11には利点があるため、今日では一般的に使用されていません。

コンソール用の画像ビューアがあります。これはやや時代遅れであるため、構築するためにいくつかの調整が必要になる場合がありますが、試す価値があります。

画像ビューア zgv -インターフェイスが非常に好きになった場合に備えて、 xzgv という名前のX11用の同様のビューアもありますたくさん。

1
Volker Siegel

実際のグラフィックスの場合、最善の(そしておそらく唯一の)賭けは svgalib ですが、X11との共通点はないため、ezplotの代わりに独自の方法を作成する必要があることに注意してください。 。

0
Shadur