ChartObject WebFAQ - Q17



#include &ltXint/Chart.h>
#include &ltXint/EditObject.h>

static String   x_labels[] = {"Houston", "Dallas", "Austin", "San Antonio"};

static float    d1992[] = { 05.0, 30.0, 20.0, 20.0};
static float    d1993[] = { 12.0, 35.0, 12.0, 20.0};
static float    d1994[] = { 15.0, 25.0, 27.0, 35.0};
static float    d1995[] = { 10.0, 38.0, 32.0, 30.0};
static float    d1996[] = { 25.0, 35.0, 17.0, 15.0};

main(argc, argv)
  int     argc;
  char    *argv[];
{
  XtAppContext  app_context;
  Widget        top_level;
  Widget        edit;
  Object        data_group, data_group1, shared_data;
  Object        chart, chart1;
  XintGeometry  chart_geometry;

  top_level  = XtAppInitialize(&app_context, "test",
				(XrmOptionDescList)NULL, 0,
				&argc, argv, NULL, NULL, 0);

   /* Create an EditObject widget*/

   edit = XtVaCreateManagedWidget("edit_object", 
	xintEditObjectWidgetClass,top_level,
	XmNwidth, 600, XmNheight, 800,
	XmNobjectEditMode, XintEDIT_ADJUST,
	NULL);

   /* Create Chart object */

    chart_geometry.x1 = 0;
    chart_geometry.y1 = 0;
    chart_geometry.x2 = 100;
    chart_geometry.y2 = 50;
    chart = (Object) XtVaCreateWidget("BarPlot",
                                (WidgetClass)xintChartObjectClass, edit,
                                XmNgeometry, &chart_geometry,
                                XmNchartType, XintCHART_TYPE_BAR,
                                XmNchartTitle, "Yearly Sales 1992-1994",
                                XmNshowLegend, True,
                                NULL);
    chart_geometry.x1 = 0;
    chart_geometry.y1 = 50;
    chart_geometry.x2 = 100;
    chart_geometry.y2 = 100;
    chart1 = (Object) XtVaCreateWidget("BarPlot1",
                                (WidgetClass)xintChartObjectClass, edit,
                                XmNgeometry, &chart_geometry,
                                XmNchartType, XintCHART_TYPE_BAR,
                                XmNchartTitle, "Yearly Sales 1994-1996",
                                XmNshowLegend, True,
                                NULL);

    /* Create a data group */

    data_group = XintCreateDataGroup(edit, "Yearly Sales", NULL, 0);
    data_group1 = XintCreateDataGroup(edit, "Yearly Sales 1", NULL, 0);

    XtVaCreateWidget("Cities", (WidgetClass)xintDataLabelObjectClass, 
                     edit,
                     XmNlabelStrings, x_labels,
                     XmNlabelCount, sizeof(x_labels)/sizeof(String),
                     XmNlabelOrientation, XintLABEL_X,
                     XmNdataGroup, data_group, NULL);

    XtVaCreateWidget("1992", (WidgetClass)xintDataSampledObjectClass, 
                     edit,
                     XmNdataArray, d1992,
                     XmNcount, sizeof(d1992)/sizeof(float),
                     XmNdataType, XintDATA_TYPE_FLOAT,
                     XmNdataGroup, data_group, NULL);

    XtVaCreateWidget("1993", (WidgetClass)xintDataSampledObjectClass, 
                     edit,
                     XmNdataArray, d1993,
                     XmNcount, sizeof(d1993)/sizeof(float),
                     XmNdataType, XintDATA_TYPE_FLOAT,
                     XmNdataGroup, data_group, NULL);

    shared_data = XtVaCreateWidget("1994", (WidgetClass)xintDataSampledObjectClass, 
                     edit,
                     XmNdataArray, d1994,
                     XmNcount, sizeof(d1994)/sizeof(float),
                     XmNdataType, XintDATA_TYPE_FLOAT, NULL);

    XtVaCreateWidget("Cities1", (WidgetClass)xintDataLabelObjectClass, 
                     edit,
                     XmNlabelStrings, x_labels,
                     XmNlabelCount, sizeof(x_labels)/sizeof(String),
                     XmNlabelOrientation, XintLABEL_X,
                     XmNdataGroup, data_group1, NULL);

    XtVaCreateWidget("1995", (WidgetClass)xintDataSampledObjectClass, 
                     edit,
                     XmNdataArray, d1995,
                     XmNcount, sizeof(d1995)/sizeof(float),
                     XmNdataType, XintDATA_TYPE_FLOAT,
                     XmNdataGroup, data_group1, NULL);

    XtVaCreateWidget("1996", (WidgetClass)xintDataSampledObjectClass, 
                     edit,
                     XmNdataArray, d1996,
                     XmNcount, sizeof(d1996)/sizeof(float),
                     XmNdataType, XintDATA_TYPE_FLOAT,
                     XmNdataGroup, data_group1, NULL);

    /* Associate the data group with the chart object */

    XintChartAssociateData(chart, data_group);
    XintChartAssociateData(chart1, data_group1);
    XintChartAssociateData(chart1, shared_data);
    XintChartAssociateData(chart, shared_data);

    /* Loop forever */

    XtRealizeWidget(top_level);
    XtAppMainLoop(app_context);
}

Click here for the Image
Back to ChartObject FAQ

© INT 1996.
data_group1); XintChartAssociateData(chart1, shared_data); XintChartAssociateData(chart, shared_data);