7

を使用して同じプロットに複数の曲線をプロットするとhold on、各曲線のデフォルトは同じ色 (青) になります。全色揃えてほしいです。

私が見た 1 つの解決策は、たとえば、カラー ベクトルを作成してc = ['k', 'g', 'r', ...]ループすることですが、この解決策は好きではありません。プロットの数が color vector の長さよりも大きい場合、問題が発生し、すべてのファイルでc定義する必要はありません。c

より良い解決策はありますか?

4

2 に答える 2

11

hold all代わりに使用してみてください。曲線は、カラーマップ上を自動的に循環するはずです。からhelp hold:

hold all はグラフと現在の線の色と線のスタイルを保持し、後続のプロット コマンドが ColorOrder プロパティと LineStyleOrder プロパティの値をリストの先頭にリセットしないようにします。プロット コマンドは、リスト内の最後のグラフが停止した場所から、定義済みの色と線のスタイルを循環し続けます。

でカラーマップを調べることができますget(gca,'ColorOrder')

于 2012-04-14T00:39:00.487 に答える
3

次のようにして、グローバル環境のデフォルト'ColorOrder'プロパティを変更することもできます。

set(0,'DefaultAxesColorOrder',hsv(10))

ここで、colormap によって指定された 10 色のセットのデフォルトの色を置き換えましたhsv。もちろん、前に行ったように、カラーマップ カラー ジェネレーター ( hsvhotcooperlines...、doc colormap詳細については使用 ) を使用するか、任意の nx 3 マトリックスを配置するだけで、他の色のセットを配置することもできます。現在の軸に色のリスト: {black, green, red} を使用する場合は、次のようにします。

set( gca,'ColorOrder', [0 0 0; 1 0 0; 0 1 0] )
于 2012-04-14T15:07:47.980 に答える