A有问题。 Zedgraph为我的等式绘制了错误的图形。
我的代码:
private void button1_Click(object sender, EventArgs e)
{
double a, b, c, dl;
a = float.Parse(textBox1.Text);
b = float.Parse(textBox2.Text);
c = float.Parse(textBox3.Text);
dl = (b * b) - (4 * a * c);
if (dl < 0)
{
MessageBox.Show("Error");
}
else if (dl > 0)
{
x1 = (-b - Math.Sqrt(dl)) / (2 * a);
x2 = (-b + Math.Sqrt(dl)) / (2 * a);
textBox4.Text = x1.ToString();
textBox5.Text = x2.ToString();
}
else
{
string str = (b / (2 * a)).ToString();
textBox4.Text = str;
textBox5.Text = str;
}
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void button2_Click(object sender, EventArgs e)
{
// This is to remove all plots
zedGraphControl1.GraphPane.CurveList.Clear();
// GraphPane object holds one or more Curve objects (or plots)
GraphPane myPane = zedGraphControl1.GraphPane;
PointPairList spl1 = new PointPairList();
// Add cruves to myPane object
LineItem myCurve1 = myPane.AddCurve("Equation", spl1, Color.Blue, SymbolType.None);
myCurve1.Line.Width = 5.0F;
myPane.Title.Text = "Graph";
for (int i = -5; i < 8; i++)
{
double y = (i - x1) * (i - x2);
spl1.Add(i, y);
}
//I add all three functions just to be sure it refeshes the plot.
zedGraphControl1.AxisChange();
zedGraphControl1.Invalidate();
zedGraphControl1.Refresh();
}
答案 0 :(得分:0)
试试这个:
private void button2_Click(object sender, EventArgs e)
{
// This is to remove all plots
zedGraphControl1.GraphPane.CurveList.Clear();
// GraphPane object holds one or more Curve objects (or plots)
GraphPane myPane = zedGraphControl1.GraphPane;
PointPairList spl1 = new PointPairList();
LineItem lineItem = new LineItem("Equation");
myCurve1.Line.Width = 5.0F;
myPane.Title.Text = "Graph";
for (int i = -5; i < 8; i++)
{
double y = (i - x1) * (i - x2);
spl1.Add(i, y);
}
// Add cruves to myPane object
myCurve1 = myPane.AddCurve("Equation", spl1, Color.Blue, SymbolType.None);
//I add all three functions just to be sure it refeshes the plot.
zedGraphControl1.AxisChange();
zedGraphControl1.Invalidate();
zedGraphControl1.Refresh();
}
在构建LineItem myCurve1 = myPane.AddCurve("Equation", spl1, Color.Blue, SymbolType.None);
列表后,我移动了spl1
。看看它是否适合你