Matlabで出力された画像が見切れる
サイズを指定して出力すればよい
サンプルコード(1024×768の場合)
width = 1024;
height = 768;
set(gcf,'PaperPositionMode','auto')
pos=get(gcf,'Position');
pos(3)=width-1; % なぜか幅が1px増えるので対処
pos(4)=height;
set(gcf,'Position',pos);
print('-r0','-dpng','fig.png');
参考URL:http://ichiro-maruta.blogspot.jp/2010/11/matlab.html
Matlabで作成したepsやpngファイルの一部が見切れてしまうこの現象.
原因はMatlab epsのBoundingBox(ここまで図形が入っていることを示す領域)の値の一部が負値を取っているせいとのこと.
この状態の画像をdvipdfmx(Texでよく使うやつ)で開くと非負値しか正しく表示できないせいで見切れてしまうよう.
xpdfを入れてpdftopsコマンドを使用して
eps→pdf→eps
の順に変換すればepsからでも何とかできるよう.
でも,図を再出力できるのであれば,サイズを指定して出力するのが手っ取り早そう.
xpdf導入後の一括変換Shellコマンド
#!/bin/sh
for f in `find . -name "*.eps"`
do
epstopdf --outfile=$f.pdf $f
pdftops -eps $f.pdf $f.eps
mv $f.eps $f
rm $f.pdf
done
参考URL:
http://elehoody.blog.fc2.com/blog-entry-231.html
http://fenrir.naruoka.org/archives/000576.html