1

Matlab グラフの点線/破線は、Figure ウィンドウでは多少きれいに見えますが、印刷すると解像度が失われ、非常に見栄えが悪くなります。下の図を参照してください。点線/破線を画面とまったく同じようにするにはどうすればよいですか?

等高線に注釈を付けた等高線図の例

4

3 に答える 3

2

私はこの問題を抱えていて、別のフォーラムで解決策を見つけました。いくつかのオプションがあります。ビットマップへのエクスポートを気にしない場合は、別のレンダラー (OpenGL または zbuffer) を使用できますが、私にとってこれは受け入れられる解決策ではありませんでした。代わりに、等高線情報を抽出して破線をプロットできます。このソリューションの元のポスターのおかげですが、どこで入手したか思い出せません。

[c1,h1] = contour(data, Contours,'--k')

% Take all the info from the contourline output argument:
i0 = 1;
i2 = 1;       
while i0 <  length(c1)
    i1 = i0+[1:c1(2,i0)];
    zLevel(i2) = c1(1,i0);
    hold on
    % And plot it with dashed lines:
    ph(i2) = plot(c1(1,i1),c1(2,i1),'k--','linewidth',.5); 
    i0 = i1(end)+1;
    i2 = i2+1;
end
% Scrap the contourlines:
delete(h1)

それが役立つことを願っています! -D

于 2013-05-22T23:28:55.490 に答える
1

FEX からexport_figを使用してみてください。これで問題が解決するはずです。

于 2013-02-15T19:36:44.563 に答える
1

Loren が作成したきれいなグラフの作成に関する優れた投稿から提案された方法を使用します。彼女が作成した関数を使用して、出力 eps ファイルに入り、点線の定義を微調整します。fixPSlinestyleFEXにあります。

figure('renderer','painters')
hold on
plot([1 2 4],[2 3 7],'r-','linewidth',13)
plot([1 2 4],[2.5 3.5 7.5],'b:','linewidth',13)

print(gcf,'-depsc2','withoutedit.eps')
fixPSlinestyle('withoutedit.eps','withedit.eps')

最初の図 (withedit.eps) が左側に表示され、eps ラインスタイルが微調整された後が右側 (withedit.eps) に表示されます。

ここに画像の説明を入力

関数に完全な制御を渡していないため、このソリューションが気に入っています。(printコマンドを使用して) 図のエクスポートを制御しますが、関数を使用して最終的な eps ファイルを調整します。

于 2013-05-23T01:10:14.770 に答える