User (Legacy) Posted April 25, 2001 Report Share Posted April 25, 2001 Karen, Posting this to the newsgroup for those who are interested. I don't think you'll be able to add multiple series but you can use annotation to add some additional data/information to your chart. I use Access 2k Private Sub Form_Load() 'Create variables for ADO Connection and Resultset Dim Conn As ADODB.Connection Dim rs As ADOR.Recordset Dim CfxData As Object Dim objCfx As ChartfxLib.ChartFX Dim AnnotX As AnnotateX.AnnotationX Dim objText As AnnotateX.AnnText Dim nMarkerPosition As Variant Dim i As Long, j As Long Dim x As Long, y As Long 'set referenct to chart object Set objCfx = Me.ChartFX1.Object 'create new annotation object Set AnnotX = New AnnotateX.AnnotationX 'turn off toolbar AnnotX.Toolbar = False 'add AnnotX to Chart1 objCfx.AddExtension AnnotX 'Open the connection Set Conn = CurrentProject.Connection 'Execute SQL and obtain resultset Set rs = Conn.Execute("SELECT GIndex, TimeOfWeighBack, WeighBackLbs FROM tblWeighBack;") 'Create Ado object from the Chart FX Resultset Set CfxData = CreateObject("CfxData.Ado") 'Assign the ADO resultset to the ChartFX Data Provider CfxData.ResultSet = rs With objCfx .DataType(0) = CDT_NOTUSED 'GIndex will be used for coloring .DataType(1) = CDT_XVALUE 'TimeOfWeighBack .DataType(2) = CDT_VALUE 'WeighBackLbs 'Let Chart FX take information from the data provider .GetExternalData CfxData 'Add any other adjustments to the object here. .Gallery = SCATTER .Chart3D = False .PointLabels = False .MarkerShape = MK_NONE .RecalcScale 'Expand Min/Max values for 'readability' .Axis(AXIS_Y).Max = .Axis(AXIS_Y).Max * 1.1 .Axis(AXIS_X).Max = .Axis(AXIS_X).Max + 1 .Axis(AXIS_X).STEP = 1 .Axis(AXIS_X).MinorStep = 0.5 End With 'Place xy text objects on graph marking GIndex numbers rs.MoveFirst j = 0 'point counter Do Until rs.EOF 'annotate chart Set objText = AnnotX.Add(OBJECT_TYPE_TEXT) 'set objText equal to Legend objText.Text = "(" & rs(0) & ") " 'adjust color If rs!GIndex = 1 Then objText.Color = vbBlack 'you could have a lookup table here Else 'for various colors, ChartFx only does 16 objText.Color = vbRed 'before it repeats End If objText.Font.Size = 7 objText.BkColor = CHART_TRANSPARENT 'Give it height and width, then SizeToFit objText.Width = 100 objText.Height = 100 objText.SizeToFit nMarkerPosition = objCfx.PaintInfo(CPI_MARKERTOPIXEL, CHART_ML(i, j)) x = CHART_LOWORD(nMarkerPosition) y = CHART_HIWORD(nMarkerPosition) objText.left = x objText.Top = y j = j + 1 rs.MoveNext Loop objCfx.Export CHART_BITMAP, "c:\temp\sample.bmp" BmpToGif "c:\temp\sample.bmp" ProcExit: rs.Close Conn.Close Set Conn = Nothing Set rs = Nothing Set CfxData = Nothing Set objCfx = Nothing End Sub Steve Karen <klwhitlo@unity.ncsu.edu> wrote in message news:2u9PlZLzAHA.1808@sfxserver.softwarefx.com... > I have a record set with multiple groups of data. > > I would like each group represented by a series on the chart. > > Is it possible to assign each series in a chart to a recordset? > > KAren > > Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.