10

All the time previously I was exporting Matlab figures in a raster format (JPG, PNG)

Is there a way to export a plot from Matlab in a vector format (SVG). I need it to inset that plots into LaTeX document.

The only thing, I have found so far is a plugin from mathworks and the answer from stackexchange , but this looks rather too complicated

4

7 に答える 7

6

LaTeX にインポートするための注釈を付けて eps にエクスポートするmatlab2tikzmatlabfragもあります。

これは、matlabfrag を使用した私の例です

私はこれについて Mathworks のエンジニアとも話し合いましたが、この種のことを行うのにすぐに使えるツールは存在しないことに同意しました。誰もがそれを使ってさまざまなことをしたいからです (私はすでに 2 つの異なる LaTeX アプローチについて言及しています)。したがって、最善の方法は、さまざまなツールを試してみて、どれが最適かを確認することです。

ほとんどの場合、軸、ラベルのフォントサイズなどをいじくり回して、思いどおりに仕上げる必要がありました(ところで、凡例を調整するのは最大の地獄です)。

于 2012-12-09T14:48:48.057 に答える
4

私は通常、LaTeXドキュメントで両方のMatlabプロットを使用します。私が通常使用するのは.eps形式で、Matlabが非常にうまくエクスポートできるベクトル形式です。プロットにコードまたはマニュアルを使用して、Matlabで可能なほとんどの編集を行う必要があります。次に、[ファイル]-> [設定のエクスポート]に移動し、[軸を展開して図を塗りつぶす]をクリックし、必要なものを構成して.epsにエクスポートします。次に、画像を任意のベクターベースのソフトウェア、Inkscape、またはAdobe Illustratorにインポートして、必要に応じて最終調整を行うことができます。 。epsをLaTeXにぶつけるだけで、完璧に機能します。また、pdflatexは通常EPSをPDFに変換するため、時間を節約したい場合は、InkscapeまたはIllustratorから事前にPDFに変換できます。

于 2012-12-09T16:14:32.487 に答える
3

私の出版物では、プロットを EPS (ベクトル化されたもの) として保存し、Inkscape で最終的な仕上げを行います。次に、Inkscape を使用して、SVG などにエクスポートできます。Inkscape には、プロットをクリーンアップするのに便利なツールがたくさんあります (パスの単純化やシェーディングなど)。

それが私が次のTsダイアグラムを作成した方法です:

Ts のノーマル ショック ソリューション

于 2012-12-09T15:55:12.047 に答える
1

.eps ファイルは簡単にエクスポートして LaTeX で使用できます。すべてのプロジェクトで、プロットを書式設定して LaTeX プロジェクトに保存する関数を使用しています。それはかなり簡単に機能します。次の行の「eps」は、任意の Matlab 画像タイプに変更できます。

何かのようなもの:

figures = sort(findobj('MenuBar','figure'));
for ii = 1:length(figures)
    saveas(gcf,['Figures/',num2str(ii)],'eps')
end
于 2012-12-09T21:44:22.997 に答える
0

私は現在、あなたが言及しているタスクを達成するために FEX パッケージplot2svgを使用しています。

使い方はとても簡単です。スクリプトを含むフォルダーを matlab パスに追加した後、次のことができます。

  plot2svg('myplot.svg',gcf);

現在の図をsvgで保存します。(もちろん、gcf(= GetCurrentFigure) を別のハンドルに変更して、開いている他の Figure を保存することもできます。)

実際、これは、PDE ツールボックスによって生成されたベクトル形式のプロットをエクスポートする唯一の方法です。

于 2012-12-09T19:42:06.480 に答える
0

2014a 以降、ルート レベルで Matlab ベクトル グラフィックスが壊れています。
したがって、わざわざ .png 形式から切り替える必要はありません。

私のメランコリックな質問に、matlab の Q&A セクションでさらに参照して ください。

于 2016-12-20T15:45:39.387 に答える
0

私は .eps で matlab の図をエクスポートし、GIMP で同じものを .png に変換しました。この方法で取得した .png ファイルは、MATLAB Figure ファイルからエクスポートまたはオプションで保存して直接取得した .png ファイルよりもはるかに高品質であることがわかります。GIMP で .eps ファイルを開くときに、より高い解像度を使用したことに注意してください。また、matlab エクスポート設定で「フォントのスケール: 自動」を選択しました。私はpdf-latexを使用しています

于 2013-01-03T17:21:48.567 に答える