Can't Adjust Chart Margin

margin, mschart

Solution

You can remove the axis margin with `Axis.IsMarginVisible = false`. You can position your charting areas using `ChartArea.Position` or position the plotting area using `ChartArea.InnerPlotPosition`

Problem

I created a Chart but it has a left margin between the Y.Axis and the Chart's border. How can I make it 0? And is it possible to define a 5px uniform margin (left, top, right, bottom) between the chart and the border? My Chart code is the following: ``` Chart chart = new Chart { AntiAliasing = AntiAliasingStyles.All, TextAntiAliasingQuality = TextAntiAliasingQuality.High, BackColor = Color.FromArgb(250, 250, 250), Height = size.Height, Width = size.Width }; chart.Legends.Clear(); ChartArea area = new ChartArea { BackColor = Color.Transparent, BorderColor = Color.FromArgb(240, 240, 240), BorderWidth = 1, BorderDashStyle = ChartDashStyle.Solid, AxisX = new Axis { Enabled = AxisEnabled.True, IntervalAutoMode = IntervalAutoMode.VariableCount, IsLabelAutoFit = true, IsMarginVisible = true, LabelStyle = new LabelStyle { ForeColor = Color.FromArgb(100, 100, 100), Font = new Font("Arial", 10, FontStyle.Regular) }, LineColor = Color.FromArgb(220, 220, 220), MajorGrid = new Grid { LineColor = Color.FromArgb(240, 240, 240), LineDashStyle = ChartDashStyle.Solid }, MajorTickMark = new TickMark { LineColor = Color.FromArgb(220, 220, 220), Size = 4.0f }, }, AxisY = new Axis { Enabled = AxisEnabled.True, IntervalAutoMode = IntervalAutoMode.VariableCount, IsLabelAutoFit = true, IsMarginVisible = true, LabelStyle = new LabelStyle { ForeColor = Color.FromArgb(100, 100, 100), Font = new Font("Arial", 10, FontStyle.Regular) }, LineColor = Color.Transparent, MajorGrid = new Grid { LineColor = Color.FromArgb(240, 240, 240), LineDashStyle = ChartDashStyle.Solid }, MajorTickMark = new TickMark { LineColor = Color.FromArgb(240, 240, 240), Size = 2.0f } }, Position = new ElementPosition { Height = 100, Width = 100, X = 0, Y = 0 } }; chart.ChartAreas.Add(area); area.AxisX.LabelStyle.Format = "H:mm"; area.AxisX.LabelStyle.IntervalType = DateTimeIntervalType.Hours; Series series = new Series { CustomProperties = "PointWidth = 1", IsXValueIndexed = true, XValueType = (ChartValueType)Enum.Parse(typeof(ChartValueType), x.Data.GetType().GetGenericArguments()[0].Name) }; series.BorderWidth = 2; series.BorderColor = Color.FromArgb(84, 164, 232); series.ChartType = SeriesChartType.Area; series.Color = Color.FromArgb(222, 234, 244); series.Points.DataBindXY(x.Data, s.Data); chart.Series.Add(series); ``` Thank You, Miguel

Original source