web-dev-qa-db-ja.com

Matlabプロットの周囲の境界線を削除します

Matlabはプロットの周りに黒い境界線を表示しているので、それを削除したいと思います。私は次のようなものを使用する必要があると思います:

_set(Figure#,'PropertyName',PropertyValue);
_

しかし、どのPropertyNameまたはPropertyValueを使用すべきかわかりません...

編集:

私は以下を含むすべての提案を試しました:

_set(gca,'box','off');
set(gca,'xcolor','w','ycolor','w','xtick',[],'ytick',[]);
axis off;
_

フィギュアにはまだ黒いボーダーがあり、次のようになります。

enter image description here

編集2:これはブラックボックスを再現する簡略化されたパッケージです。 「runPlot」というスクリプトを実行します。ここにあります: http://dl.dropbox.com/u/8058705/plotTest.Zip ボックスがまだ表示されている理由がわかりません。これは、「plotTEC.m」の行が原因である可能性があります

axis([-.65 .6 .25 1.32]) % hardwiring axis length since the coastline runs off of the plot

@Pursuit:「plotbrowser」を使用すると、再帰的なエラーが発生します。matlabプロットパッケージに慣れていませんが、これは奇妙に思えます。他の誰かがこのエラーを受け取りますか?繰り返しになりますが、皆さんのアドバイスに感謝します!

他に何か提案はありますか?

前もって感謝します!

8
GPSmaster

軸のプロパティを試してみたいと思います。関心のあるいくつかのプロパティ。

xcolor  %The color of the x-axis line and the x axis labels
ycolor  %
box     %'on', or 'off' indicating if one or both sides of a plot should have lines
xtick   %Where to place the labels
ytick

完全に裸のプロットの場合は、次を使用します。

figure
set(gca,'xcolor','w','ycolor','w','xtick',[],'ytick',[])

図の背景も白に設定するには

set(gcf,'color','w')

正確な問題に応じて、「box」プロパティを試して、プロットにどのように影響するかを確認できます。

set(gca,'box','on')
set(gca,'box','off')

実際のプロットラインをオフにし、プロットラベルを保持したい場合、私は簡単な解決策を知りません。上記のように軸を削除してから、text関数を使用して手動でラベルを追加する必要があると思います。


編集:この質問から学んだように、 プロットオーバーレイMATLAB あなたも試すことができます

axis off
axis on

これは同等だと思います

set(gca,'visible','off')
set(gca,'visible','on')

編集2:

他に何も機能しない場合は、フィギュアの「プロットブラウザ」をアクティブにしてください。 「表示」->「プロットブラウザ」を使用します。プロットブラウザパネルから、削除する必要のある線を描画しているオブジェクトがわかるまで、各オブジェクトのチェックを外します。

次に、問題のあるオブジェクトをダブルクリックして[プロパティエディタ]パネルを表示し、ほとんどの場合、[その他のプロパティ]をクリックしてそのオブジェクトのすべての可能なプロパティを表示します。そのビューから、(うまくいけば)どのオブジェクトが問題のある線を描いているかを把握できます。

編集するオブジェクトとプロパティを把握したら、コード内のどこでそのオブジェクトが作成されているかを把握し、プログラムでプロパティを設定できます。

14
Pursuit

試してください:

 set(gca、 'Box'、 'off'); 
6
b3.

Imagescの「灰色」の背景を削除するソリューション

I = imread('imgname.jpg');
[rows columns] = size(I);
posX = 100; posY = 100; %you can set any value for posX and posY - try to keep it on screen
f = figure (1);
imagesc(I);
set(gcf,'Position',[posX posY columns rows]);
set(gca,'units','pixels');
set(gca,'units','normalized','position',[0 0 1 1]);
axis off;
axis tight;

これにより、imagescを使用して、元の画像と同じサイズで画像が保存されます。乾杯!

3
dbs

set(gca、 'Visible'、 'off');

0
Aneeq Anwar