Ver Mensaje Individual
  #1 (permalink)  
Antiguo 07/11/2006, 16:40
yomito
 
Fecha de Ingreso: noviembre-2006
Mensajes: 1
Antigüedad: 18 años, 7 meses
Puntos: 0
Pregunta Grafica con dos Ejes "Y" ayuda !!!

Bueno antes que nada buenas tardes, tengo una duda y la verdad ya me canse de buscarle solucion y nomas no encuentro ni como .

Aaahhhh otra cosa, no se si este mensaje deba de ir aqui, si no es asi, les pido de favor lo cambien al foro correspondiente, y disculpen la molestia.

Miren el problema es el siguiente, estoy desarrollando una pagina en asp, todo hiba bien hasta que a alguien se le ocurrio comentar, (oye no lo podrias poner graficas !! ).

Ahora si ahi viene lo bueno, yo se que este tema es algo viejo, y ya e visto algunas de las soluciones que ustedes dieron, en post pasados, pero no encontre la solucion a mi problema.

Resulta que tengo que hacer una grafica, de un linea y 2 barras, ademas con dos ejes "Y".

La mayor parte ya lo tengo resuelto, ya estan las dos barras, la linea y los dos ejes, pero el problema es que el Eje Izquierdo y Derecho toman los mismos valores, por ejemplo: si cambio los los valores de maximio y minimo del eje iaquierdo, en automatico me cambia el de la derecha .....

Tengo 2 dudas.

1) Como hacerle para que los ejes no tengan la misma escala??

2) Y como le hago para que la serie de "Linea" tome el eje derecho como su escala y las series de "Barra" tomen el de la izquierda??

por default las tres series toman el de la izquierda.

Les pongo el Codigo, para que le hechen un ojo, espero y me puedan ayudar ....

Gracias




Dim cnn
Dim rst
Dim cSpace
Dim fso
Dim sYear
Dim strSQL
Dim c
Dim objChart
Dim objSeries1, objSeries2, objSeries3
Dim ax_y1, ax_y2
Dim catAx
Dim dlc
Dim fnt


set cnn = Server.CreateObject("ADODB.Connection")
set rst = Server.CreateObject("ADODB.Recordset")

cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=x:\xxxx\prueba.mdb;"
strSQL = "SELECT * FROM tbl_prueba"
rst.CursorLocation = 3
rst.Open strSQL, cnn, 3

'*************************************************
'GRAFICO
'*************************************************
set cSpace = server.CreateObject("OWC.Chart")
set objChart = cSpace.Charts.Add()
set c = cSpace.Constants

'Formato del area del grafico
cSpace.Border.Color = c.chColorNone
cSpace.Interior.Color = c.chColorNone

'Formato del grafico y tipo de grafico
objChart.PlotArea.Interior.Color = c.chColorNone
objChart.PlotArea.Border.Color = c.chColorNone

'Formato del Legend
objChart.HasLegend = True
objChart.Legend.Position = c.chLegendPositionBottom
objChart.Legend.Border.Color = "black"

'*************************************************
'SERIES
'*************************************************
set cSpace.DataSource = rst

'Serie 1 ################################################## ###

Set objSeries1 = objChart.SeriesCollection.Add()
Set dlc = objSeries1.DataLabelsCollection.Add()
dlc.HasValue = True

'Serie 1 Propiedades

With objSeries1
'methods
.SetData c.chDimCategories, 0, "mes"
.SetData c.chDimValues, 0, "final"
'linea
.Caption = "Final Acumuladas"
.Type = c.chChartTypeLineMarkers
.Line.Color = "Blue"
.Marker.Style = c.chMarkerStyleCircle
.Interior.Color = "Blue"
End With

'Serie 2 ################################################## ###

Set objSeries2 = objChart.SeriesCollection.Add()

'Serie 2 Propiedades
With objSeries2
'methods
.SetData c.chDimCategories, 0, "mes"
.SetData c.chDimValues, 0, "gross"

'line
.Caption = "Gross"
.Type = c.chChartTypeColumnStacked'Clustered
.Border.Color = "White"
.Interior.Color = "#55bFFF"
End With

'Serie 3 ################################################## ###

Set objSeries3 = objChart.SeriesCollection.Add()

'Serie 3 Propiedades
With objSeries3
'methods
.SetData c.chDimCategories, 0, "mes"
.SetData c.chDimValues, 0, "desco"

'line
.Caption = "Desconexiones"
.Type = c.chChartTypeColumnStacked
'.Overlap = 100
.Border.Color = "White"
.Interior.Color = "#FFCC00"
End With

'*************************************************
'EJES Y TITULOS
'*************************************************

objChart.Axes(c.chAxisPositionBottom).HasMajorGrid lines = False
objChart.Axes(c.chAxisPositionLeft).MajorGridlines .Line.Color = c.chColorNone '"Black" o c.chColorNone
objChart.Axes(c.chAxisPositionBottom).MajorGridlin es.Line.Color = "Black" '"Black" o c.chColorNone

'Agregar el eje secundario
objChart.Axes.Add objChart.Scalings(c.chDimValues), c.chAxisPositionRight, c.chValueAxis
objChart.Axes(c.chAxisPositionRight).MajorGridline s.Line.Color = c.chColorNone '"Black" o c.chColorNone

objChart.Axes(c.chAxisPositionBottom).Line.Color = "Black"
objChart.Axes(c.chAxisPositionLeft).Line.Color = "Black"

'Formato del Titulo del Grafico
objChart.HasTitle = True
objChart.Title.Caption = "Prueba"
set fnt = objChart.Title.Font
fnt.Name = "Tahoma"
fnt.Size = 10
fnt.Bold = True


'Formato del eje derecho
set ax_y2 = objChart.Axes(c.chAxisPositionright)
ax_y2.Scaling.Maximum = 270
ax_y2.Scaling.Minimum = 190
ax_y2.NumberFormat = "#,##0" '"Currency"
ax_y2.HasTitle = True
ax_y2.Title.Caption = "Miles"
set fnt = ax_y2.Title.Font
fnt.Name = "Tahoma"
fnt.Size = 8
fnt.Bold = True

'Formato del eje izquierdo
set ax_y1 = objChart.Axes(c.chAxisPositionLeft)
Set catAx = objChart.Axes(c.chAxisPositionBottom)
'ax_y1.Scaling.Maximum = 10000
'ax_y1.Scaling.Minimum = -4000
ax_y1.CrossingAxis = catAx
catAx.CrossesAtValue = 0
ax_y1.NumberFormat = "#,##0" '"Currency"
ax_y1.HasTitle = True
ax_y1.Title.Caption = ""
set fnt = ax_y1.Title.Font
fnt.Name = "Tahoma"
fnt.Size = 8
fnt.Bold = True