contour series with query

TeeChart VCL for Borland/CodeGear/Embarcadero RAD Studio, Delphi and C++ Builder.
Post Reply
llnck
Newbie
Newbie
Posts: 7
Joined: Thu Sep 20, 2012 12:00 am

contour series with query

Post by llnck » Tue Nov 11, 2014 1:06 pm

3D-Plot.jpg
3D-Plot.jpg (110.56 KiB) Viewed 3462 times
Hi all,

I'm having a hard time displaying a 3d-Graph with several contour plots. I added a sample with random data.
This shows the plot as it should pretty much look like in the end, but what I really need is queries for each
layer (along z-axis).

Now my questions:

a) I can connect the series to a query at design time and at run time, but nothing shows
b) how can I define the size of a contour area in the plot? (I place it on the z-axis with
setting "YPosition", the other dimensions I set with the NumXValues and NumYValues
property, which makes the series expect 60000 values, but I have only only ~100)
c) I'm very confused with the 3D Grid's range and palette properties. What are they meant for?
I would like a "red light-like" color transition for small concentrations to large concentrations.

Thanks for any suggestions

Norbert

Yeray
Site Admin
Site Admin
Posts: 9612
Joined: Tue Dec 05, 2006 12:00 am
Location: Girona, Catalonia
Contact:

Re: contour series with query

Post by Yeray » Wed Nov 12, 2014 12:18 pm

Hi Norbert,
llnck wrote:a) I can connect the series to a query at design time and at run time, but nothing shows
You may be missing to open the database or the query.
If you still find problems with it, please try to arrange a simple example project we can run as-is to reproduce the problem here.
llnck wrote:b) how can I define the size of a contour area in the plot? (I place it on the z-axis with
setting "YPosition", the other dimensions I set with the NumXValues and NumYValues
property, which makes the series expect 60000 values, but I have only only ~100)
Usually, the increments of the XValues and YValues are always 1 so they are typically populated as follows:

Code: Select all

  for i:=0 to 2 do
    with Chart1.AddSeries(TContourSeries) as TContourSeries do
    begin
      Brush.Style:=bsSolid;
      NumXValues:=10;
      NumZValues:=5;

      for x:=0 to NumXValues-1 do
        for z:=0 to NumZValues-1 do
          AddXYZ(x, random*10, z);

      case i of
        0: YPosition:=30;
        1: YPosition:=70;
        2: YPosition:=130;
      end;
    end;

  Chart1.Axes.Left.SetMinMax(0,170);
  Chart1.Axes.Depth.Visible:=true;
However, if you want, you can set IrregularGrid=true and use a different increment. Ie:

Code: Select all

  for i:=0 to 2 do
    with Chart1.AddSeries(TContourSeries) as TContourSeries do
    begin
      Brush.Style:=bsSolid;

      IrregularGrid:=true;

      XCount:=12;
      ZCount:=8;
      XMax:=600;
      ZMax:=100;
      for x:=0 to XCount-1 do
        for z:=0 to ZCount-1 do
          AddXYZ(x*XMax/(XCount-1), random*10, z*ZMax/(ZCount-1));

      case i of
        0: YPosition:=30;
        1: YPosition:=70;
        2: YPosition:=130;
      end;
    end;

  Chart1.Axes.Left.SetMinMax(0,170);
  Chart1.Axes.Depth.Visible:=true;
llnck wrote:c) I'm very confused with the 3D Grid's range and palette properties. What are they meant for?
I would like a "red light-like" color transition for small concentrations to large concentrations.
I'd suggest you to check the example at "All features\Welcome !\Chart styles\Extended\Contour\Palette and Color range" in the features demo program shipped with the binary installation. It show how to use each alternative and what result do they give.
Best Regards,
ImageYeray Alonso
Development & Support
Steema Software
Av. Montilivi 33, 17003 Girona, Catalonia (SP)
Image Image Image Image Image Image Please read our Bug Fixing Policy

Post Reply