Making a 4 sided Graph / 4 sided (Cartesian) grid

2019-01-28 13:00发布

问题:

I've been trying to make a 4 sided graph / 4 sided grid that can show and connect points that I set

However using the Chart in the toolbox did not work as I couldn't find that type of a graph. How can I make one?

Example graph:

回答1:

This is quite simple. All you need to do is tell the Chart to place the Crossing of the Axis at certain points, instead of keeping it unset (NaN).

You also should set the range by setting Minimum and Maximum:

ChartArea CA = chart1.ChartAreas[0];
Series S1 = chart1.Series[0];
S1.ChartType = SeriesChartType.Line;

CA.AxisX.Maximum = 100;
CA.AxisX.Minimum = -100;
CA.AxisY.Maximum = 100;
CA.AxisY.Minimum = -100;

CA.AxisX.Crossing = 0;
CA.AxisY.Crossing = 0;

CA.AxisX.Interval = 10;
CA.AxisY.Interval = 10;

CA.AxisX.LineWidth = 3;
CA.AxisY.LineWidth = 3;

CA.AxisX.MajorGrid.Enabled = false;
CA.AxisY.MajorGrid.Enabled = false;
CA.AxisX.MinorTickMark.Enabled = false;
CA.AxisY.MinorTickMark.Enabled = false;


// now we add a few points:
S1.Points.AddXY(-21,81);
S1.Points.AddXY(52,60);
S1.Points.AddXY(-53, -11);
S1.Points.AddXY(-53, 88);

You can use most chart types, though not all, like Pie.

You can play around with many other properties to make it work as you want; especially the Interval may be of interest!

Other properies of interest include these:

CA.AxisX.ArrowStyle = AxisArrowStyle.Triangle;
CA.AxisX.MinorTickMark.Enabled = false;    
CA.AxisX.LabelStyle.Enabled = false;