Page 1 of 1

Is there a way to change the way gridlines are drawing?

Posted: Mon Mar 08, 2004 11:50 am
by 9080443
Currently on our charts the horizontal gridlines are above the vertical gridlines but I actually want to have it the otherway around. I want the vertical gridline to be above the horizontal gridline which gives this sense of deepness. Is that possible? Any ideas?

Thank you in advance.
Igor.

Posted: Mon Mar 08, 2004 8:41 pm
by Pep
Hi Igor,

one way to do this could be to create a custom bottom axis, use it for the Series and make invisible the one by default. In this manner it will draw the Vertical grid lines in front of the Horizontal.

Posted: Tue Mar 09, 2004 11:47 am
by 9080443
Hi Josep,

Thank you for reply. That works great except of one little issue. Now it is displayed two 0.00 positions on Left Axis - one for default Bottom Axis and one for custom I added. Even if I'm hiding default Bottom Axis still it seems saving a place for it. And custom axis is displaying below this "reserved" line. Can I permanently disable or remove default Bottom Axis and use only custom as one and only for horizontal axis? Again, thank you for your prompt help.

Igor.

Posted: Tue Mar 09, 2004 1:37 pm
by Pep
Hi Igor,

does this happens assigning the custom axis as the Horizontal for the Series ?
tChart1.Series(0).HorizontalAxisCustom = tChart1.Axis.AddCustom(True)

It works fine using the following code :

Code: Select all

Private Sub Form_Load()
With TChart1
    .Aspect.View3D = False
    .AddSeries scLine
    .Series(0).FillSampleValues (10)
    .Series(0).HorizontalAxisCustom = .Axis.AddCustom(True)
    .Panel.MarginBottom = 10
    With .Axis.Left.GridPen
        .Style = psSolid
        .Color = vbBlue
        .Width = 3
    End With
    With .Axis.Custom(0).GridPen
        .Style = psSolid
        .Color = vbRed
        .Width = 3
    End With
End With
End Sub

Posted: Tue Mar 09, 2004 4:44 pm
by 9080443
Josep,

Here's the code I'm using VC++ 6.0

Code: Select all

CAxes cAxes= m_ctlTChart.GetAxis(); 
		cAxes.GetBottom().SetVisible(FALSE); 
		
		long nAxesNumber = cAxes.AddCustom(TRUE); 
		CAxis cBottomAxis = cAxes.GetCustom(nAxesNumber);
		cBottomAxis.SetStartPosition(0);
		cBottomAxis.SetEndPosition(100);
		m_ctlTChart.Series(nSeriesIndex).SetHorizontalAxisCustom(nAxesNumber);  
		
I believe it has the same semantics as the code in VB that you posted in the sense that custom axis is associated with the serie via SetHorizontalAxisCustom. Still showing two "0.00".

Igor.

Posted: Tue Mar 09, 2004 4:54 pm
by 9080443
to continue...Actually I have noticed that it shows ALL values on Left Axis in double instances when using custom horizontal axis. And horizontal gridlines also two time more, that it would be using default bottom axis.

....
0.01
0.01
0.00
0.00

All this is happend on Bar 2D serie.
What am I doing wrong? PLease, advice.

Posted: Fri Mar 12, 2004 11:14 am
by Pep
Hi Igor,

using the following code (and the TeeChart Pro v6.04) works as expected here, could you please test it ?

Code: Select all

	m_chart.GetAspect().SetView3D(false);
	m_chart.AddSeries(scBar);
	m_chart.Series(0).FillSampleValues(10);
	m_chart.Series(0).SetHorizontalAxisCustom(m_chart.GetAxis().AddCustom(true));
	m_chart.GetPanel().SetMarginBottom(10);
	m_chart.GetAxis().GetLeft().GetGridPen().SetStyle(psSolid);
	m_chart.GetAxis().GetLeft().GetGridPen().SetColor(RGB(200,0,0));
	m_chart.GetAxis().GetLeft().GetGridPen().SetWidth(3);
	m_chart.GetAxis().GetCustom(0).GetGridPen().SetStyle(psSolid);
	m_chart.GetAxis().GetCustom(0).GetGridPen().SetColor(RGB(10,10,10));
	m_chart.GetAxis().GetCustom(0).GetGridPen().SetWidth(3);
If you still having problem please, post the code you're using so we can reproduce the problem "as is" here, or send me an example to the steema.public.attachments newsgroup.