The graph resizes and becomes smaller on every function call
<p>I have a function that I need to call every once in a while. But, every time I do, the graph (a pie chart) resizes itself and becomes smaller than the previously obtained piechart.</p>

<pre><code>void LoadPieChart(DateTime lower, DateTime higher)
    {
        splitContainer1.Panel1.Controls.Remove(pieChart);
        pieChart.Series.Clear();
        pieChart.Palette = ChartColorPalette.Fire;
        pieChart.BackColor = Color.Black;
        pieChart.Titles.Add("LOST OPPORTUNITY");
        pieChart.ChartAreas[0].BackColor = Color.Transparent;
        Series series1 = new Series
        {
            Name = "series1",
            IsVisibleInLegend = true,
            Color = System.Drawing.Color.White,
            ChartType = SeriesChartType.Pie
        };

        pieChart.Series.Add(series1);
        int num = A.CountLO();
        List&lt;string&gt;[] lista = new List&lt;string&gt;[7];
        lista = A.SelectLO();
        float counter_manpower = 0;
        float counter_spares = 0;
        float counter_tools = 0;
        float counter_other = 0;

        string[] reason = lista[6].ToArray();
        string[] low = lista[4].ToArray();            
        string[] up = lista[5].ToArray();
        string[] collection = new string[366];

        for (int j = num-LO; j &lt; num; j++)
        {
            DateTime x = DateTime.Parse(low[j]);
            DateTime y = DateTime.Parse(up[j]);
            if (x.Date&gt;=lower.Date &amp;&amp; y.Date&lt;=higher.Date)
            {
                if (reason[j].Equals("LACK OF MANPOWER"))
                    counter_manpower++;
                if (reason[j].Equals("LACK OF SPARES"))
                    counter_spares++;
                if (reason[j].Equals("LACK OF TOOLS"))
                    counter_tools++;
                if (!reason[j].Equals("LACK OF MANPOWER") &amp;&amp; !reason[j].Equals("LACK OF SPARES") &amp;&amp; !reason[j].Equals("LACK OF TOOLS"))
                {
                    counter_other++;
                }
            }

        }

        float a = ((counter_manpower/(counter_manpower+counter_spares+counter_tools+counter_other))*100);
        float b = ((counter_spares / (counter_manpower + counter_spares + counter_tools+counter_other)) * 100);
        float c = ((counter_tools / (counter_manpower + counter_spares + counter_tools+counter_other)) * 100);
        float d = ((counter_other / (counter_manpower + counter_spares + counter_tools + counter_other)) * 100);
        double aa = Math.Truncate(100 * a) / 100;
        double bb = Math.Truncate(100 * b) / 100;
        double cc = Math.Truncate(100 * c) / 100;
        double dd = Math.Truncate(100 * d) / 100;

        series1.Points.Add(counter_manpower);
        var p1 = series1.Points[0];
        Math.Round(a, 1);
        Math.Round(b, 1);
        Math.Round(c, 1);
        if (counter_manpower!=0)
            p1.AxisLabel = (aa.ToString() + "%");
        p1.LegendText = "LACK OF MANPOWER";
        p1.Color = Color.Red;

        series1.Points.Add(counter_spares);
        p1 = series1.Points[1];
        if (counter_spares!=0)
            p1.AxisLabel = (bb.ToString() + "%");
        p1.LegendText = "LACK OF SPARES";
        p1.Color = Color.Yellow;

        series1.Points.Add(counter_tools);
        p1 = series1.Points[2];
        if(counter_tools!=0)
            p1.AxisLabel = (cc.ToString() + "%");
        p1.LegendText = "LACK OF TOOLS";
        p1.Color = Color.Orange;


        series1.Points.Add(counter_other);
        p1 = series1.Points[3];

            p1.AxisLabel = (dd.ToString() + "%");
        p1.LegendText = "OTHER";
        p1.Color = Color.Maroon;
        //pieChart.Invalidate();

        splitContainer1.Panel1.Controls.Add(pieChart);
    }
</code></pre>

<p>I can't seem to find out why, any suggestions? 
I use the following function to initalize the graph:</p>

<pre><code>private void InitializeChart()
    {
        this.components = new System.ComponentModel.Container();
        ChartArea chartArea1 = new ChartArea();
        Legend legend1 = new Legend() { BackColor = Color.White, ForeColor = Color.Black, Title = "CAUSE" };
        pieChart = new Chart();
        ((ISupportInitialize)(pieChart)).BeginInit();
        SuspendLayout();

        //===Pie chart
        chartArea1.Name = "PieChartArea";
        pieChart.ChartAreas.Add(chartArea1);
        pieChart.Dock = System.Windows.Forms.DockStyle.Fill;
        legend1.Name = "Legend1";
        pieChart.Legends.Add(legend1);
        pieChart.Location = new System.Drawing.Point(0, 50);

        //====Bar Chart


        AutoScaleDimensions = new System.Drawing.Size(284,262);
        AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
        //this.ClientSize = new System.Drawing.Size(284, 262);           
        this.Load += new EventHandler(Form1_Load);
        ((ISupportInitialize)(this.pieChart)).EndInit();

        this.ResumeLayout(false);

    }
</code></pre>
