1

plot3次の形式を使用して、Matlab で複数の行をプロットすると:

    plot3([x1 x2], [y1 y2], [z1 z2], 'LineWidth', 2, 'LineStyle','--');

後で次のpatchように使用してパッチをプロットします。

    p = patch(x, y, z, 'k');
    set(p, 'EdgeColor', 'g', 'FaceColor', 'none', 'LineWidth', 3, 'EdgeAlpha', 0.7)

既にプロットされている線の 'LineWidth' と 'LineStyle' は、次の図に示すようにわずかに変更されます (最初の図はパッチをプロットする前の線を示し、2 番目の図はパッチをプロットした後の変更、緑色の線を示します)。何が悪いのか教えてください。

ここに画像の説明を入力 ここに画像の説明を入力

4

1 に答える 1

0

setコマンドが軸のグローバル プロパティをリセットするためです。軸ではなく、各線にプロパティを適用する必要があります。

ahs = findall(gca,'type','line')
set(ahs(1), 'LineWidth', 2, 'LineStyle','--');
set(ahs(2), 'EdgeColor', 'g', 'FaceColor', 'none', 'LineWidth', 3, 'EdgeAlpha', 0.7);
于 2013-04-24T21:06:29.560 に答える