私はいくつかのデータ列を持つVisualStudio WinFormsでグラフを作成しています。その一部のラベルを配置したいと思います。主な問題は、最初と最後の列のラベルが表示されないことです。チャートの最小値と最大値は固定されており、データポイントは最小値と最大値に設定できます。MSChart DataPointラベルオーバーラップ
は、例えば私は一連のチャートを作った[0] .ChartType =「列」また、X、Y、インデックスとテキスト文字列を表示するシリーズ[0] .LABELプロパティを設定することによって、ラベルを割り当てシリーズ[0] .LabelBackColorとシリーズ[0] .LabelBorderColorをボックスにする。私が得たものである
:
テキストが背景ボックスの外側で、ラベルは国境はなく(左側)AxisYがまだ表示されているが、重複しています。 x = 0およびx = 10のラベルはまったく表示されません。また、Column型では、以下に書かれたすべての操作は効果がありませんでした。
実は私は、StackedColumnタイプが必要になります。そして、私は[0] .ChartType = "StackedColumn"シリーズにタイプを変更し、この得た:
ボックスが大きくなっているが、まだAxisYラインと重複し、最初のラベルと最後のラベルはまだありません。
Iはシリーズ[0] .SmartLabelStyle.IsOverlappingHidden = falseを設定しようと、この得た: が
AxisXとAxisY線とマーカーは、ラベル上に示されています。それはまずいです。 シリーズは、[0] =偽を.SmartLabelStyle.Enabledし、この得た:
あまり良くする
は、その後、私は設定することにより、 SmartLabelStyle全くを無効にしてみました。ラベルも重なっています。最後に
私は[0] .SmartLabelStyle.MovingDirection = SmartLabelStyleを有効にしてシリーズを設定することにより、移動するラベルを強制しようとした "右|左"と、この得た:
今すぐにテキストをラベルは適切に移動されますが、背景ボックスは移動しません。そのボックスが適切に動いていればそれで十分でしょうが、そうではありませんでした。 データポイントラベルをチャートの左右に正しく表示させる方法がありません。
テキストとボックスのラベル位置を設定する方法はありますか?ラベルボックスをテキストの適切なサイズに設定するには?
私は間違いなくchart.Paintメソッドを避けたいと思います。