函数比例图

Scale graph of function

我正在尝试制作一个 Windows 表单应用程序来显示函数图。

我怎样才能拉伸图表,使其更偏向两侧?

  private void Graphs_Paint(object sender, PaintEventArgs e)
    {
        e.Graphics.DrawLine(new Pen(Color.Black), 0, ClientSize.Height / 2, ClientSize.Width, ClientSize.Height / 2);
        e.Graphics.DrawLine(new Pen(Color.Black), ClientSize.Width / 2, 0, ClientSize.Width / 2, ClientSize.Height);
        for (double x = -100; x < 100; x += 0.1)
        {
            double y = x * x * -1;
            //y = x * -1;   
            //y = Math.Sqrt(x) * -1;
            //y = 1 / x;
            try
            {
                e.Graphics.FillEllipse(new SolidBrush(Color.Red), (ClientSize.Width / 2) - 5 + Convert.ToInt32(x), (ClientSize.Height / 2) - 5 + Convert.ToInt32(y), 10, 10);

            }
            catch (Exception)
            {
            
            }
        }
    }

为 x 和 y 添加单独的比例因子;目前你有 y = x²| -100

没有 1:1 纵横比可以在方框中显示该曲线,因此您可以显示较少的曲线或以不同方式缩放轴。

我会修复视口,比如 -100<=x<=100 和 0<=y<=10000,然后根据 ClientSize 和视口范围计算 xScale 和 yScale。