5

私はMSChart Control自分の1つのVB.NETプロジェクトで使用しました。下の表のようなデータを円グラフに表示することにしました。

ここに画像の説明を入力してください

しかし、それを取り除くためにラベルが互いに重なり合っています。以下に示すように、「<strong>スマートラベル」プロパティを試しました。

Chart1.Series("Default").SmartLabelStyle.Enabled = True
Chart1.Series("Default").SmartLabelStyle.AllowOutsidePlotArea = LabelOutsidePlotAreaStyle.No

Chart1.Series("Default").SmartLabelStyle.CalloutLineAnchorCapStyle = LineAnchorCapStyle.None

Chart1.Series("Default").SmartLabelStyle.CalloutLineColor = Color.Red

Chart1.Series("Default").SmartLabelStyle.CalloutLineWidth = 1
Chart1.Series("Default").SmartLabelStyle.CalloutStyle = LabelCalloutStyle.None

しかし、それは私を助けません…それは私に以下のスクリーンショットのように出力を示していますが。 ここに画像の説明を入力してください

それを取り除くために私が使用しなければならないプロパティはどれですか?.....。

編集:

PieLabelStyle=Outside以下のスクリーンショットでわかるように、カスタムプロパティを設定しても違いはありません。

ここに画像の説明を入力してください

私を助けてください..

4

2 に答える 2

16

PieLabelStyleCustomSettingsをOutsideに変更します。これにより、チャートの周囲にすべてのラベルが配置され、関連するセクションを指す線が表示されます。

VB用

Chart1.Series(0)("PieLabelStyle") = "Outside"
Chart1.ChartAreas(0).Area3DStyle.Enable3D = true
Chart1.ChartAreas(0).Area3DStyle.Inclination = 10

C#の場合

Chart1.Series[0]["PieLabelStyle"] = "Outside";
Chart1.ChartAreas[0].Area3DStyle.Enable3D = true;
Chart1.ChartAreas[0].Area3DStyle.Inclination = 10;
于 2012-05-08T13:23:25.767 に答える
0

Visual Studioデザイナーを使用することと、コードで上記の手順を設定することの両方を試しました。うまくいきませんでした。

Visual Studioデザイナーで、Series1->CustomPropertiesに移動します。CustomPropertiesを展開し、チャートタイプに応じて個々のプロパティを設定できます。ただし、CustomPropertiesの最初の行には、個々のフィールドに設定されたCustomPropertiesのテキスト表現があります。私のグラフは他のChartTypeから変換されたため、この最初の行にカスタムプロパティが含まれていましたが、これらのプロパティはPieには適用されませんでした。そして、これがCustomProperties設定を尊重しない理由でした。 CustomPropertiesの最初の行を手動で削除しました...

PieLabelStyle = Outside

働き始めました!すべてのラベルが読み取り可能になりました。私はこれをチャートデザイナーのバグとして扱います。ChartTypeを変更すると、古いCustomPropertiesが自動的にクリーンアップされます。

于 2016-01-16T21:32:18.987 に答える