用DBChart,
1、在Chart/series里加一个直方图(选择一个图形就可以)。
2、在Series/Data Source里选择Dataset
3、然后连上你的Dataset(Query or table)。
4、选择X,Y坐标。
5、Query.open;

解决方案 »

  1.   

    to:IceXie() 
    谢谢你的回答,我想再问一下在:
    2、在Series/Data Source里选择Dataset
    这个Dataset是不是你第3步里面说的Query,我没建表,刚才在窗体上
    放了个Query1,没有与表连接,然后我按照你的方法2在Dataset里选择了
    Query1,但好象不行。
      

  2.   

    to:IceXie() 
    我刚才建了个表试了一下,上面的问题已经解决,但你说的
    4、选择X,Y坐标。我只在Dataset下面的选项里发现
    Labels: (这个可以选表里的字段)
    x:
    Bar:
    3个可让你填的框,没看到有y可以让你选呀。
      

  3.   

    这是一部分动态创建DBChart的程序,希望对您有帮助。  
     Chart := TDBChart.Create (nil);
      Chart.Parent := Panel1;
      Chart.Align := alClient;
      Chart.AxisVisible := true;
      Chart.Legend.Visible := true;
      Series.DataSource := Query1;
      Series.XLabelsSource := 某字段;
      Series.YValues.ValueSource := 某字段 ;
      

  4.   

    to:mf78Boy()
    你还在吗?/
    我是在DBchart的属性上设置 
    Series.XLabelsSource := 某字段;
    Series.YValues.ValueSource := 某字段 ;
    的,应该效果一样呀,可是图形出不来呀!
      

  5.   

    to: IceXie()
    但是我在  Labels,  Bar的下拉框中看不见表里的字段呀,
    自己输入表里的字段他提示表中没有这个字段,我Query1已经连了,不知道
    为什么会这样!
      

  6.   

    您试试看是否是:DBChart中的Series是否选中,如果没有,会显示不出来的
      

  7.   

    还有一种情况:你所选择的字段中都为String类型,Series无法计算,他总是数据统计的呀!
      

  8.   

    to:mf78Boy() 
    那肯定选中了呀!
      

  9.   

    我创建表的时候,2个字段都是char型的。
      

  10.   

    我详细生活一下,2个字段都是char型的。按照
    1、在Chart/series里加一个直方图(选择一个图形就可以)。
    我选的是第1个图,也就是曲线图!
    2、在Series/Data Source里选择Dataset
    选择好了
    3、然后连上你的Dataset(Query or table)。
    query1与表也连好了
    4、选择X,Y坐标。
    做完第3部后,dataset下面有3个下拉框, label, x ,y 其中label下拉框可以选择表里的字段,但x,y的下拉框都不可以。而且自己输入表里的字段他提示表中没有这个字段。
      

  11.   

    您需要将‘卖出的书’字段转换为integer类型,DBChart统计的是数据(数字)而非Char.你可以选择DBDemos中的Country.db试一下,和您的表比较一下,可能体会好一点
      

  12.   

    to:mf78Boy() 
    好了,可以了,果然是这个原因,谢谢了!再次谢谢2位,被我麻烦了一个下午,结贴!