void SetupAxes() { var plotspace = graph.DefaultPlotSpace; plotspace.AllowsUserInteraction = true; plotspace.Delegate = new MyBarDelegate (); var major = new CPTLineStyle () { LineWidth = .75f, LineColor = CPTColor.FromGenericGray (0.2f).ColorWithAlphaComponent (.75f) }; var minor = new CPTLineStyle () { LineWidth = .25f, LineColor = CPTColor.WhiteColor.ColorWithAlphaComponent (0.1f) }; var axisSet = (CPTXYAxisSet)graph.AxisSet; // Label x with a fixed interval policy var x = axisSet.XAxis; x.LabelingPolicy = CPTAxisLabelingPolicy.None; x.Title = "X Axis"; x.TitleOffset = 0; // Label y with an automatic label policy. var y = axisSet.YAxis; y.LabelingPolicy = CPTAxisLabelingPolicy.None; y.LabelOffset = 0; y.Title = "Y Axis"; y.TitleOffset = 0; }
void SetupPlots() { // Create a plot that uses the data source method CPTRangePlot dataSourceLinePlot = new CPTRangePlot(); dataSourceLinePlot.Identifier = (NSString)"Date Plot"; // Add line style barLineStyle = new CPTLineStyle(); barLineStyle.LineWidth = 3f; barLineStyle.LineColor = CPTColor.GreenColor; dataSourceLinePlot.BarLineStyle = barLineStyle; // Bar properties dataSourceLinePlot.BarWidth = 10.0f; dataSourceLinePlot.GapWidth = 20.0f; dataSourceLinePlot.GapHeight = 20.0f; dataSourceLinePlot.DataSource = new RangeSource(); // Add plot graph.AddPlot(dataSourceLinePlot); areaFillDefault = CPTFill.FromColor(CPTColor.ClearColor); barLineStyleDefault = dataSourceLinePlot.BarLineStyle; var space = graph.DefaultPlotSpace as CPTXYPlotSpace; space.ScaleToFitPlots(new CPTPlot [] { dataSourceLinePlot }); }
void SetupAxes() { var plotspace = graph.DefaultPlotSpace; plotspace.AllowsUserInteraction = true; var major = new CPTLineStyle() { LineWidth = .75f, LineColor = CPTColor.FromGenericGray(0.2f).ColorWithAlphaComponent(.75f) }; var minor = new CPTLineStyle() { LineWidth = .25f, LineColor = CPTColor.WhiteColor.ColorWithAlphaComponent(0.1f) }; var axisSet = (CPTXYAxisSet)graph.AxisSet; // Label x with a fixed interval policy var x = axisSet.XAxis; x.LabelingPolicy = CPTAxisLabelingPolicy.Automatic; x.MinorTicksPerInterval = 4; x.PreferredNumberOfMajorTicks = 8; x.MajorGridLineStyle = major; x.MinorGridLineStyle = minor; x.Title = "X Axis"; x.TitleOffset = -30; // Label y with an automatic label policy. var y = axisSet.YAxis; y.LabelingPolicy = CPTAxisLabelingPolicy.Automatic; y.MinorTicksPerInterval = 4; y.PreferredNumberOfMajorTicks = 8; y.MajorGridLineStyle = major; y.MinorGridLineStyle = minor; y.LabelOffset = 20; y.Title = "Y Axis"; y.TitleOffset = -30; }
void SetupAxes () { var plotspace = graph.DefaultPlotSpace; plotspace.AllowsUserInteraction = true; var major = new CPTLineStyle { LineWidth = .75f, LineColor = CPTColor.FromGenericGray (0.2f).ColorWithAlphaComponent (.75f) }; var minor = new CPTLineStyle { LineWidth = .25f, LineColor = CPTColor.WhiteColor.ColorWithAlphaComponent (0.1f) }; var axisSet = (CPTXYAxisSet) graph.AxisSet; // Label x with a fixed interval policy var x = axisSet.XAxis; x.LabelingPolicy = CPTAxisLabelingPolicy.Automatic; x.MinorTicksPerInterval = 4; x.PreferredNumberOfMajorTicks = 8; x.MajorGridLineStyle = major; x.MinorGridLineStyle = minor; x.Title = "X Axis"; x.TitleOffset = -30; // Label y with an automatic label policy. var y = axisSet.YAxis; y.LabelingPolicy = CPTAxisLabelingPolicy.Automatic; y.MinorTicksPerInterval = 4; y.PreferredNumberOfMajorTicks = 8; y.MajorGridLineStyle = major; y.MinorGridLineStyle = minor; y.LabelOffset = 20; y.Title = "Y Axis"; y.TitleOffset = -30; }
void SetupAxes() { var plotspace = graph.DefaultPlotSpace; plotspace.AllowsUserInteraction = true; plotspace.Delegate = new MyBarDelegate(); var major = new CPTLineStyle() { LineWidth = .75f, LineColor = CPTColor.FromGenericGray(0.2f).ColorWithAlphaComponent(.75f) }; var minor = new CPTLineStyle() { LineWidth = .25f, LineColor = CPTColor.WhiteColor.ColorWithAlphaComponent(0.1f) }; var axisSet = (CPTXYAxisSet)graph.AxisSet; // Label x with a fixed interval policy var x = axisSet.XAxis; x.LabelingPolicy = CPTAxisLabelingPolicy.None; x.Title = "X Axis"; x.TitleOffset = 0; // Label y with an automatic label policy. var y = axisSet.YAxis; y.LabelingPolicy = CPTAxisLabelingPolicy.None; y.LabelOffset = 0; y.Title = "Y Axis"; y.TitleOffset = 0; }
void SetupPlots () { // Create a plot that uses the data source method var dataSourceLinePlot = new CPTRangePlot (); dataSourceLinePlot.Identifier = (NSString)"Date Plot"; // Add line style barLineStyle = new CPTLineStyle(); barLineStyle.LineWidth = 3f; barLineStyle.LineColor = CPTColor.GreenColor; dataSourceLinePlot.BarLineStyle = barLineStyle; // Bar properties dataSourceLinePlot.BarWidth = 10.0f; dataSourceLinePlot.GapWidth = 20.0f; dataSourceLinePlot.GapHeight = 20.0f; dataSourceLinePlot.DataSource = new RangeSource(); // Add plot graph.AddPlot(dataSourceLinePlot); areaFillDefault = CPTFill.FromColor(CPTColor.ClearColor); barLineStyleDefault = dataSourceLinePlot.BarLineStyle; var space = graph.DefaultPlotSpace as CPTXYPlotSpace; space.ScaleToFitPlots (new CPTPlot [] { dataSourceLinePlot }); }
public virtual void AwakeFromNib() { // If you make sure your dates are calculated at noon, you shouldn't have to // worry about daylight savings. If you use midnight, you will have to adjust // for daylight savings time. NSDate refDate = NSDate.DateWithNaturalLanguageString ("12:00 Oct 27, 2010"); double oneDay = 24 * 60 * 60; // Create graph from theme graph = new CPTXYGraph (CGRect.CGRectZero); CPTTheme theme = CPTTheme.ThemeNamed (CPTTheme.kCPTDarkGradientTheme); graph.ApplyTheme (theme); hostView.HostedGraph = graph; // Title CPTMutableTextStyle textStyle = CPTMutableTextStyle.TextStyle; textStyle.Color = CPTColor.WhiteColor; textStyle.FontSize = 18.0; textStyle.FontName = "Helvetica"; graph.Title = "Click to Toggle Range Plot Style"; graph.TitleTextStyle = textStyle; graph.TitleDisplacement = new CGPoint (0.0f, -20.0f); // Setup scatter plot space CPTXYPlotSpace plotSpace = graph.DefaultPlotSpace.CastTo<CPTXYPlotSpace> (); double xLow = oneDay * 0.5; plotSpace.XRange = CPTPlotRange.PlotRangeWithLocationLength (NSDecimal.FromDouble (xLow), NSDecimal.FromDouble (oneDay * 5.0)); plotSpace.YRange = CPTPlotRange.PlotRangeWithLocationLength (NSDecimal.FromDouble (1.0), NSDecimal.FromDouble (3.0)); // Axes CPTXYAxisSet axisSet = graph.AxisSet.CastTo<CPTXYAxisSet> (); CPTXYAxis x = axisSet.XAxis; x.MajorIntervalLength = NSDecimal.FromDouble (oneDay); x.OrthogonalCoordinateDecimal = NSDecimal.FromString ("2"); x.MinorTicksPerInterval = 0; NSDateFormatter dateFormatter = new NSDateFormatter ().Autorelease<NSDateFormatter> (); dateFormatter.DateStyle = NSDateFormatterStyle.NSDateFormatterShortStyle; CPTTimeFormatter timeFormatter = new CPTTimeFormatter (dateFormatter).Autorelease<CPTTimeFormatter> (); timeFormatter.ReferenceDate = refDate; x.LabelFormatter = timeFormatter; CPTXYAxis y = axisSet.YAxis; y.MajorIntervalLength = NSDecimal.FromString (@"0.5"); y.MinorTicksPerInterval = 5; y.OrthogonalCoordinateDecimal = NSDecimal.FromDouble (oneDay); // Create a plot that uses the data source method CPTRangePlot dataSourceLinePlot = new CPTRangePlot ().Autorelease<CPTRangePlot> (); dataSourceLinePlot.Identifier = PLOT_IDENTIFIER; // Add line style CPTMutableLineStyle lineStyle = CPTMutableLineStyle.LineStyle; lineStyle.LineWidth = 1.0; lineStyle.LineColor = CPTColor.GreenColor; barLineStyle = lineStyle.Retain<CPTLineStyle> (); dataSourceLinePlot.BarLineStyle = barLineStyle; // Bar properties dataSourceLinePlot.BarWidth = 10.0; dataSourceLinePlot.GapWidth = 20.0; dataSourceLinePlot.GapHeight = 20.0; dataSourceLinePlot.DataSource = this; // Add plot graph.AddPlot (dataSourceLinePlot); graph.DefaultPlotSpace.Delegate = this; // Store area fill for use later CPTColor transparentGreen = CPTColor.GreenColor.ColorWithAlphaComponent (0.2); areaFill = new CPTFill (transparentGreen); // Add some data NSMutableArray newData = new NSMutableArray(); NSUInteger i; Random rand = new Random (); for (i = 0; i < 5; i++) { double xx = oneDay * (i + 1.0); double yy = 3.0 * rand.Next () / (double)Int32.MaxValue + 1.2; double rHigh = rand.Next () / (double)Int32.MaxValue * 0.5 + 0.25; double rLow = rand.Next () / (double)Int32.MaxValue * 0.5 + 0.25; double rLeft = (rand.Next () / (double)Int32.MaxValue * 0.125 + 0.125) * oneDay; double rRight = (rand.Next () / (double)Int32.MaxValue * 0.125 + 0.125) * oneDay; newData.AddObject (NSDictionary.DictionaryWithObjectsAndKeys ( NSDecimalNumber.NumberWithDouble (xx), CPTRangePlot.FieldX, NSDecimalNumber.NumberWithDouble (yy), CPTRangePlot.FieldY, NSDecimalNumber.NumberWithDouble (rHigh), CPTRangePlot.FieldHigh, NSDecimalNumber.NumberWithDouble (rLow), CPTRangePlot.FieldLow, NSDecimalNumber.NumberWithDouble (rLeft), CPTRangePlot.FieldLeft, NSDecimalNumber.NumberWithDouble (rRight), CPTRangePlot.FieldRight, null)); } plotData = newData; }