MultiAxesSubsets 1
1//! Right button click to show popup menu. //2//! Double Click to show customization dialog. //3//! Left-Click and drag to draw zoom box. Use popup memu or 'z' to undo zoom. //4 5// This example builds upon the basic CreateSimpleGraph '000' example chart //6CreateSimpleGraph(Pego1);7 8// Now sub-divide subsets into 4 individual axes //9// Each axis with one subset in each //10Pego1.PeGrid.MultiAxesSubsets[0] = 1;11Pego1.PeGrid.MultiAxesSubsets[1] = 1;12Pego1.PeGrid.MultiAxesSubsets[2] = 1;13Pego1.PeGrid.MultiAxesSubsets[3] = 1;14 15// Set first axis parameters //16Pego1.PeGrid.WorkingAxis = 0;17Pego1.PeString.YAxisLabel = "Label 1";18Pego1.PePlot.Method = GraphPlottingMethod.Bar;19 20// Set second axis parameters //21Pego1.PeGrid.WorkingAxis = 1;22Pego1.PeString.YAxisLabel = "Label 2";23Pego1.PePlot.Method = GraphPlottingMethod.PointsPlusLine;24 25// Set third axis parameters //26Pego1.PeGrid.WorkingAxis = 2;27Pego1.PeString.YAxisLabel = "Label 3";28Pego1.PePlot.Method = GraphPlottingMethod.Bar;29 30// Set fourth axis parameters //31Pego1.PeGrid.WorkingAxis = 3;32Pego1.PeString.YAxisLabel = "Label 4";33Pego1.PePlot.Method = GraphPlottingMethod.PointsPlusLine;34 35// Reset WorkingAxis when done //36Pego1.PeGrid.WorkingAxis = 0;37 38// Add Axis Separator //39Pego1.PeGrid.Option.MultiAxesSeparators = MultiAxesSeparators.Thin;40 41// Axis Sizing //42Pego1.PeUserInterface.Allow.MultiAxesSizing = true;43 44// Other various properties //45Pego1.PeColor.BitmapGradientMode = true;46Pego1.PeColor.QuickStyle = QuickStyle.DarkNoBorder;47Pego1.PePlot.MarkDataPoints = false;48 49// Add graph annotations showing how to place annotations per axis // v9.550Pego1.PeUserInterface.Menu.AnnotationControl = true;51Pego1.PePlot.DataShadows = DataShadows.Shadows;52 53int aCnt = 0;54for (int annot = 0; annot < 5; annot++)55{56 int nRndRow = 0;57 int nRndCol = (int)(Rand_Num.NextDouble() * (float)Pego1.PeData.Points - 1);58 Pego1.PeAnnotation.Graph.X[aCnt] = nRndCol + 1;60 Pego1.PeAnnotation.Graph.Type[aCnt] = (int)Gigasoft.ProEssentials.Enums.GraphAnnotationType.Pointer;61 Pego1.PeAnnotation.Graph.Text[aCnt] = "Axis0 " + annot.ToString();62 Pego1.PeAnnotation.Graph.Color[aCnt] = Color.FromArgb(255, 255, 255, 255);63 Pego1.PeAnnotation.Graph.Axis[aCnt] = 0; // ie WorkingAxis index 0-1564 aCnt++;65}66for (int annot = 0; annot < 5; annot++)67{68 int nRndRow = 1;69 int nRndCol = (int)(Rand_Num.NextDouble() * (float)Pego1.PeData.Points - 1);70 Pego1.PeAnnotation.Graph.X[aCnt] = nRndCol + 1;72 Pego1.PeAnnotation.Graph.Type[aCnt] = (int)Gigasoft.ProEssentials.Enums.GraphAnnotationType.Pointer;73 Pego1.PeAnnotation.Graph.Text[aCnt] = "Axis1 " + annot.ToString();74 Pego1.PeAnnotation.Graph.Color[aCnt] = Color.FromArgb(255, 255, 255, 255);75 Pego1.PeAnnotation.Graph.Axis[aCnt] = 1;76 aCnt++;77}78for (int annot = 0; annot < 5; annot++)79{80 int nRndRow = 2;81 int nRndCol = (int)(Rand_Num.NextDouble() * (float)Pego1.PeData.Points - 1);82 Pego1.PeAnnotation.Graph.X[aCnt] = nRndCol + 1;84 Pego1.PeAnnotation.Graph.Type[aCnt] = (int)Gigasoft.ProEssentials.Enums.GraphAnnotationType.Pointer;85 Pego1.PeAnnotation.Graph.Text[aCnt] = "Axis2 " + annot.ToString();86 Pego1.PeAnnotation.Graph.Color[aCnt] = Color.FromArgb(255, 255, 255, 255);87 Pego1.PeAnnotation.Graph.Axis[aCnt] = 2;88 aCnt++;89}90for (int annot = 0; annot < 5; annot++)91{92 int nRndRow = 3;93 int nRndCol = (int)(Rand_Num.NextDouble() * (float)Pego1.PeData.Points - 1);94 Pego1.PeAnnotation.Graph.X[aCnt] = nRndCol + 1;96 Pego1.PeAnnotation.Graph.Type[aCnt] = (int)Gigasoft.ProEssentials.Enums.GraphAnnotationType.Pointer;97 Pego1.PeAnnotation.Graph.Text[aCnt] = "Axis3 " + annot.ToString();98 Pego1.PeAnnotation.Graph.Color[aCnt] = Color.FromArgb(255, 255, 255, 255);99 Pego1.PeAnnotation.Graph.Axis[aCnt] = 3;100 aCnt++;101}102 103Pego1.PeAnnotation.Show = true;104Pego1.PeFont.GraphAnnotationTextSize = 105;105Pego1.PeAnnotation.Graph.MinSymbolSize = MinimumPointSize.Large;106Pego1.PeAnnotation.Graph.MaxSymbolSize = MinimumPointSize.Large;107 108// Generally call ReinitializeResetImage at end **'109Pego1.PeFunction.ReinitializeResetImage();110Pego1.Invalidate();111// Optionally call Pego1.Refresh() if you are not seeing changes immediatelyPego1.PeData.Y[s, p]Click underlined properties to view documentation