5

私の前にいる2人の男性、2人目の男性のように、3Dチャートに問題があります。

この写真のようにそれらを強制的に透明にする方法: 代替テキスト

ASP.NETチャートコントロールに付属の3D面グラフの例から取得。このグラフにはChartColorPalette.BrightPastelパレットがありますが、透明です。

ChartColorPalette.BrightPastelパレットを使用した3Dチャートもありますが、透明ではなく、サンプルチャートのように透明にする方法がまだ見つかりません。(マークアップとコードビハインドの例を調べた後):

代替テキスト

私が見つけた唯一の方法は、透明度のためにアルファチャネルでシリーズの色を設定するか、透明色でカラーパレットを使用することです(たとえば、ChartColorPalette.SemiTransparent)が、私が見逃している他のデフォルトの方法があるはずです。

私が本当にこれを知る必要がある理由は、マークアップを使用するだけでコードの背後にあるコードなしでグラフを作成しているため、これだけのためにコードスニペットを作成するのは少し冗長だと感じています。

ご回答ありがとうございます。

編集:ASP.NETチャートの.NET3.5バージョンを使用しています。

4

3 に答える 3

1

あなたもこのスレッドにいるようです。残念ながら、透明度を設定するには、アルファチャネルで色を使用する必要がありますAFAIK

利用可能なパレットの概要と、それらを操作するための基本事項を以下に示します。

私の推測では、明るいパステルパレットの色を繰り返し、アルファチャネルを追加することで、新しいパレットを作成できます。これをグローバルスタティックで行う場合、おそらくWebアプリケーションの初期化ロジックの一部として、参照できるはずです。非常に簡単です。コードビハインドを使用したくない場合は「可能性がありますか?」カスタムパレットをCustomPaletteプロパティにデータバインドすることはできますが、確実に言うことはできません。

于 2010-08-07T12:45:32.437 に答える
1

ここでも同じ問題があります。これを使用して解決:

// After all series manipulation, add this
chart.ApplyPaletteColors();
foreach (var serie in chart.Series)
    serie.Color = Color.FromArgb(220, serie.Color);
于 2011-10-29T16:07:49.323 に答える
1

シリーズごとに1つの色ではなく、パレットを使用する場合は、すべてのポイントに色を設定する必要があります。

myChart.ApplyPaletteColors();

foreach (var series in myChart.Series)
{
    foreach (var point in series.Points)
    {
        point.Color = Color.FromArgb(220, point.Color);
    }
}
于 2012-02-10T05:16:32.540 に答える