1

名前をパイ自体の近くに置くだけでなく、matlab パイに凡例を追加したいと考えています。つまり、ボックスに名前を表示し、パーセンテージを (通常どおり) パイの近くに表示する必要があります。しかし、次のように単純に凡例を追加すると、パッチ情報には添付されません。

pieH=pie([.3,.4,.3]);
legend({'Leg1','Leg2','Leg3'},'location','EastOutside');

パイレジェンドの不具合

以下のように、パッチ注釈アイコンの表示をオンにしてみましたが、うまくいきませんでした。

set(get(get(pieH(1),'Annotation'),'LegendInformation'),'IconDisplayStyle','on')
set(get(get(pieH(3),'Annotation'),'LegendInformation'),'IconDisplayStyle','on')
set(get(get(pieH(5),'Annotation'),'LegendInformation'),'IconDisplayStyle','on')

また、ヘルプにあるように、パッチを適用したハンドルを渡そうとしましたが、効果もありませんでした:

legend([pieH(1:2:end)],{'Leg1','Leg2','Leg3'},'location','EastOutside');

編集

私は matlab ハンドル グラフィックス バージョン 2 を使用していましたが、この組み合わせは新しいグラフィックス バージョンではまだ機能しないようです。これはmatlabのバグであり、このトピックが発見につながったので、閉じています。しかし、たまたま誰かがすでにこの問題を抱えていて、回避策を知っている場合は、私に知らせてください.

4

1 に答える 1

3

これを機能させる方法は次のとおりです。

X=[100 200 300];
h=pie(X);
legend(h(1:2:end), 'Small', 'Medium', 'Large','location','EastOutside');

ここに画像の説明を入力

于 2013-09-11T23:53:28.980 に答える