Jump to content
Software FX Community


  • Content Count

  • Joined

  • Last visited

Community Reputation

0 Neutral

About MDS

  • Rank
  1. First, ChartFx doesn't provide any events to handle the turning on and turning off of toolbars. This makes it very difficult to sync a checkbox with the context menu inside of the chart to toggle the visibility of toolbars. The best thing I've found is the PostPaint event, but it is very generic and provides very limited event data. <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> Second, ChartFx doesn't consistently hang on to its extension collection whenever the chart data is refresh. To get the annotation toolbar, you have to create an AnnotationX o
  2. Is there a way to show the ranges of the intervals for the histogram chart on the X-Axis? In other words, if I set the statistics chart to have 5 intervals and the values are from 0 to 100, how do I display 0 to 20 on the first histogram bar, 21 to 40 on the second, and so on?
  3. MDS

    Remove a StudyGroup

    Try this. Create a chart with statistics. Add a CentralTendencyMean study group programmatically. Add a CentralTendencyMedian study group programmatically. Now programmatically remove the CentralTendencyMedian study group analyses (and the CentralTendencyMedian custom study). The only way I found to do this is by using the StudiesCollection.Find method and test for null. If it is not null, then call the StudiesCollection remove method. However, this method results in an orphaned Range analysis in the CentralMedian custom study because both the Study groups above contain the rang
  4. MDS

    Remove a StudyGroup

    You have it correct. So now I have a statistics object with a collection of studies. Some were added to the statistics studies collection as individual Analysis enumerations and some were added as StudyGroup objects. The overload of the Studies.Add method enables the addition of Analysis, Study, and StudyGroup objects. However, there is no corresponding Remove overload. There is, however, a Remove method which takes a Study object. The trick, then, is to somehow convert an Analysis enumeration value into a Study. I noticed that an Analysis value cannot be converted into a Study ob
  5. Is there a way have intervals of unequal size? For example, interval 1 is from 10 to 20, interval 2 is from 21 to 100, and interval 3 is from 101 to 1000.
  6. Is there a way to remove a StudyGroup from the studies collection? Or... is there a way to iterate over the Analysis enumerations provided by a specific StudyGroup?
  7. When I perform the following, I get an error "OverflowException was unhandled." Any idea why? If I comment out the line series1.YAxis = YAxis.Secondary;, then I don't get the error. OracleConnection connection = new OracleConnection(connectionString); string sql = "select month_num, numvalue1, numvalue2 from mytable";using (connection) { OracleCommand command = new OracleCommand(sql, connection); OracleDataAdapter dataAdapter = new OracleDataAdapter(command);dataAdapter.Fill(dataset, "Table0"); } chart1.DataSourceSettings.DataType[0] = DataType.Label; chart1.DataSourceSettings.DataTyp
  8. I think we're on the same page now. Any idea how this might be done otherwise? Without a crosstab?
  9. Actually, I have 10 columns in the original DataTable. I am setting all of them to NotUsed initially. There are 3 rows ("oil", "gas", and "coal") for every year. There are 7 years worth of data, so I have 21 rows in the original DataTable. Column1 (first field in the DataTable) is an integer representing years - e.g. 2003, 2004, 2005, 2006, etc. I want these dates to make up the X Axis. Column2 (second field in the DataTable) is a string representing a category. The possible values are "oil", "gas", and "coal." When creating a CrossTabDataProvider, these represent the series.
  10. ... yet another option is to combine the crosstabdataprovider with multiple panes, which I originally did not want to do. However, I am flexible to the multiple pane idea. Unfortunately, the crosstabdataprovider only allows one value field, so there seems to be no way to create multiple panes with the crosstabdata provider. Has anyone been able to create multiple panes using different values from a crosstabdata provider?
  11. In the documentation for the CrossTabDataProvider, "Only one value column can be defined." Is there another way to create a multi-pane chart using, for example, the DataTableProvider when one of the fields in the DataTable is a category (e.g. oil, gas, coal) field?
  12. Thanks, maximop. The error is resolved, but my initial question remains unanswered. Here's what I understand... If you create a crosstab then the number of series are equivalent to the number of distinct values in the field assigned as the CrosstabDataType.ColumnHeading enum value. In my case, "oil", "gas", and "coal" in the CategoryField will create 3 series. Using the code above enables me to create a right Y axis, but the chart still only displays the bars for the left. I guess what I'm after is either 6 series (3 bars for the left axis and 3 bars for the right axis) or a 3D
  13. I'm getting an overflow error. Any idea why? Here's the code: chart1.ClearData(SoftwareFX.ChartFX. ClearDataFlag.AllData);string tableName = "TestTable"; DataTable dataTable = DataSet.Tables[tableName];DataTableProvider dataTableProvider = new DataTableProvider(dataTable);CrosstabDataProvider cfxCT = new CrosstabDataProvider(); cfxCT.DataSource = dataTableProvider; cfxCT.DataType[0] = CrosstabDataType.RowHeading; // Year Field (Integer)cfxCT.DataType[1] = CrosstabDataType.ColumnHeading; // Category Grouping - 3 possible values (GAS, OIL, COAL)cfxCT.DataType[2] = CrosstabDataType.V
  14. I have a need to create a chart with left and right y axes using a crosstab (without using panes). Example fields are: CategoryField1, DataField1, ValueField1, and ValueField2. There are distinct values in the CategoryField1 field. ValueField1 is the left Y axis. ValueField2 is the right Y axis. DataField1 is the X Axis (e.g. a date). Does anyone know how to do this in code?
  • Create New...