Using ExactDateTime = True on Week increment doesn't work

TeeChart VCL for Borland/CodeGear/Embarcadero RAD Studio, Delphi and C++ Builder.
Post Reply
FP
Newbie
Newbie
Posts: 14
Joined: Mon May 17, 2004 4:00 am

Using ExactDateTime = True on Week increment doesn't work

Post by FP » Fri Nov 26, 2004 1:38 pm

Hi,

When using ExactDateTime = True on an axis and the incement is a week the labels displayed doesnt fall on "exact weeks".

Code: Select all

    TChart1.AddSeries scLine
    TChart1.Series(0).AddXY #11/1/2004#, 1, "", 0
    TChart1.Series(0).AddXY #11/8/2004#, 2, "", 0
    TChart1.Series(0).AddXY #11/15/2004 2:00:00 AM#, 4, "", 0
    TChart1.Series(0).AddXY #11/22/2004 3:00:00 AM#, 1, "", 0
    
    TChart1.Axis.Bottom.SetMinMax #11/1/2004#, #11/30/2004#

    'Uncommenting the line below makes the labels display on wrong dates (shows when scrolling).
    'They should be "stable" when the chart is scrolled.
    'If not uncommented, the values are stable at scroll (but then the chart don't display dates of cause)
    'TChart1.Series(0).XValues.DateTime = True

    TChart1.Axis.Bottom.ExactDateTime = True
    TChart1.Axis.Bottom.Increment = 7
Is this a little bug.

Other increments seem to work.

Narcís
Site Admin
Site Admin
Posts: 14730
Joined: Mon Jun 09, 2003 4:00 am
Location: Banyoles, Catalonia
Contact:

Post by Narcís » Fri Nov 26, 2004 4:22 pm

Hi FP,
When using ExactDateTime = True on an axis and the incement is a week the labels displayed doesnt fall on "exact weeks".
The increments fall in "exact weeks". You can see it clear adding this line:

Code: Select all

TChart1.Axis.Bottom.MinorTickCount = 6
What it is true is that the labels shouldn't move when scrolling. I have added it in our defect list to be solved for future releases.
Best Regards,
Narcís Calvet / Development & Support
Steema Software
Avinguda Montilivi 33, 17003 Girona, Catalonia
Tel: 34 972 218 797
http://www.steema.com
Image Image Image Image Image Image
Instructions - How to post in this forum

Narcís
Site Admin
Site Admin
Posts: 14730
Joined: Mon Jun 09, 2003 4:00 am
Location: Banyoles, Catalonia
Contact:

Post by Narcís » Fri Nov 26, 2004 4:27 pm

Hi FP,

I forgot to ask you to post your following messages like this one in the ActiveX forum as you posted VB code.
Best Regards,
Narcís Calvet / Development & Support
Steema Software
Avinguda Montilivi 33, 17003 Girona, Catalonia
Tel: 34 972 218 797
http://www.steema.com
Image Image Image Image Image Image
Instructions - How to post in this forum

FP
Newbie
Newbie
Posts: 14
Joined: Mon May 17, 2004 4:00 am

Post by FP » Fri Nov 26, 2004 9:48 pm

Sorry about that. An honest mistake.

FP
Newbie
Newbie
Posts: 14
Joined: Mon May 17, 2004 4:00 am

Post by FP » Fri Nov 26, 2004 10:00 pm

Ran the code again...

I get labels on 2004-11-02, 2004-11-09, 2004-11-16, 2004-11-23, 2004-11-30.

You are right that is seven days inbetween, but that is tuesdays. I would like the labels to to display on mondays (or whatever days is set to be first day of week).

If I set the increment to be a month (dtOneMonth). Labels display on the 1:st in every month, dont they?

Is it possible to achieve the same behaviour when using weeks?

Narcís
Site Admin
Site Admin
Posts: 14730
Joined: Mon Jun 09, 2003 4:00 am
Location: Banyoles, Catalonia
Contact:

Post by Narcís » Mon Nov 29, 2004 8:50 am

Hi FP,

Then the solution would be adding the labels you want using the following code:

Code: Select all

Private Sub TChart1_OnGetNextAxisLabel(ByVal Axis As Long, ByVal LabelIndex As Long, LabelValue As Double, MoreLabels As Boolean)
    If Axis = atBottom Then
        MoreLabels = True
        'Only label if following cases are true
        Select Case LabelIndex
            Case 0: LabelValue = #11/1/2004#
            Case 1: LabelValue = #11/8/2004#
            Case 2: LabelValue = #11/15/2004#
            Case 3: LabelValue = #11/22/2004#
            Case 4: LabelValue = #11/30/2004#
            Case Else: MoreLabels = False
        End Select
    End If
End Sub
Best Regards,
Narcís Calvet / Development & Support
Steema Software
Avinguda Montilivi 33, 17003 Girona, Catalonia
Tel: 34 972 218 797
http://www.steema.com
Image Image Image Image Image Image
Instructions - How to post in this forum

Post Reply