Discussion:
Excel:grafico burbujas,¿cómo se pone rótulo de nombre a cada burbu
(demasiado antiguo para responder)
Luis Miguel
2005-06-20 19:21:02 UTC
Permalink
No sé cómo poner el nombre de cada burbuja en el rótulo del gráfico, ¿alguien
puede ayudarme?

Gracias,

Luis Miguel
Héctor Miguel
2005-06-21 04:10:49 UTC
Permalink
hola, Luis Miguel !
... como poner el nombre de cada burbuja en el rotulo del grafico [...]
-> si te refieres a que cada burbuja muestre un rotulo con el nombre de su categoria...
1) selecciona la serie de valores/burbujas y ve a [menu] formato / serie de datos seleccionada...
[o por atajo {ctrl}+1 o... selecciona la serie con un click-derecho / formato de serie de datos...]
2) [del siguiente dialogo] selecciona el apartado de 'rotulos de datos' y...
3) elige 'mostrar rotulos' [hay otras alternativas/opciones de rotulos 'a mostrar']
-> si te refieres a que el titilo ->del grafico<- 'incluya' los nombres de las categorias...
necesitaras 'concatenar' el rango de los nombres de las categorias en la celda de donde el grafico 'toma' el titulo

-> si lo que necesitas es diferente de los supuestos anteriores...
comentas datos adicionales ?

saludos,
hector.
Luis Miguel
2005-06-21 07:46:02 UTC
Permalink
Héctor: me refiero a que cada bola tenga el nombre de su categoría; p.ej.
tengo una bola que tiene el nombre de "distancia" y con valores X,Y,Tamaño de
(10,20,600) y otra bola que tiene el nombre de "tiempo" y valores de
X,Y,Tamaño de (15,40,400). Siguiendo tus instrucciones consigo colocar a cada
bola el rótulo de los valores X ó Y ó Tamaño, o incluso todos ellos a la vez.

Lo que no consigo de ninguna manera es que aparezca como rótulo el "nombre"
de la bola, es decir "tiempo" y "distancia"...lo que me aparece si selecciono
el rótulo de "nombre de la serie" en el check box correspondiente es que cada
bola toma el nombre de "tiempo distancia", es decir los dos nombres unidos y
se repiten como rótulo en cada bola...Supongo que debe haber forma de
separarlos y asignar cada nombre a sus bola, pero no lo consigo...
Post by Héctor Miguel
hola, Luis Miguel !
... como poner el nombre de cada burbuja en el rotulo del grafico [...]
-> si te refieres a que cada burbuja muestre un rotulo con el nombre de su categoria...
1) selecciona la serie de valores/burbujas y ve a [menu] formato / serie de datos seleccionada...
[o por atajo {ctrl}+1 o... selecciona la serie con un click-derecho / formato de serie de datos...]
2) [del siguiente dialogo] selecciona el apartado de 'rotulos de datos' y...
3) elige 'mostrar rotulos' [hay otras alternativas/opciones de rotulos 'a mostrar']
-> si te refieres a que el titilo ->del grafico<- 'incluya' los nombres de las categorias...
necesitaras 'concatenar' el rango de los nombres de las categorias en la celda de donde el grafico 'toma' el titulo
-> si lo que necesitas es diferente de los supuestos anteriores...
comentas datos adicionales ?
saludos,
hector.
Héctor Miguel
2005-06-21 09:38:24 UTC
Permalink
hola, Luis Miguel !
... me refiero a que cada bola tenga el nombre de su categoria
p.ej. tengo una bola que tiene el nombre de "distancia" y con valores X,Y,Tamaño de (10,20,600)
y otra bola que tiene el nombre de "tiempo" y valores de X,Y,Tamaño de (15,40,400).
Siguiendo tus instrucciones consigo colocar a cada bola el rotulo de los valores X o Y o Tamaño
Lo que no consigo de ninguna manera es que aparezca como rotulo el "nombre" de la bola, es decir "tiempo" y "distancia"...
la forma mas 'sencilla' [igual que en los graficos de dispersion] es...
1.- 'click-derecho' sobre el grafico -> opciones del grafico...
2.- [pestaña] rotulos de datos -> selecciona mostrar 'alguno' [valor o rotulo... 'da igual'] ;) ->y... 'acepta'<-
3.- selecciona ->los rotulos de datos<- [un click 'sencillo' en alguno y... se seleccionaran todos]
4.- 'vuelve' a seleccionar ->cada uno 'por separado'<- [un click 'sencillo' sobre cada rotulo de la serie]
5.- ->en la barra de formulas<- introduce el signo igual '=' y selecciona [con el mouse] la celda con 'su rotulo'
'repite' por cada rotulo de la serie y... listo !!!
-> lo anterior deja 'casado' cada rotulo con el contenido de 'su celda' <-

si cualquier duda... comentas?
saludos,
hector.
Luis Miguel
2005-06-21 10:21:02 UTC
Permalink
Lo he conseguido Héctor, gracias...
Ahora se me presenta otra cuestión: cuando tengo un gran número de bolas,
p.ej. 50 bolas, poner el título 1 a 1 me parece casi inabordable...¿hay forma
de hacerlo automáticamente para todas?...me parece que debería ser posible y
de hecho me interesaría mucho saber cómo...

Gracias por anticipado...
Post by Héctor Miguel
hola, Luis Miguel !
... me refiero a que cada bola tenga el nombre de su categoria
p.ej. tengo una bola que tiene el nombre de "distancia" y con valores X,Y,Tamaño de (10,20,600)
y otra bola que tiene el nombre de "tiempo" y valores de X,Y,Tamaño de (15,40,400).
Siguiendo tus instrucciones consigo colocar a cada bola el rotulo de los valores X o Y o Tamaño
Lo que no consigo de ninguna manera es que aparezca como rotulo el "nombre" de la bola, es decir "tiempo" y "distancia"...
la forma mas 'sencilla' [igual que en los graficos de dispersion] es...
1.- 'click-derecho' sobre el grafico -> opciones del grafico...
2.- [pestaña] rotulos de datos -> selecciona mostrar 'alguno' [valor o rotulo... 'da igual'] ;) ->y... 'acepta'<-
3.- selecciona ->los rotulos de datos<- [un click 'sencillo' en alguno y... se seleccionaran todos]
4.- 'vuelve' a seleccionar ->cada uno 'por separado'<- [un click 'sencillo' sobre cada rotulo de la serie]
5.- ->en la barra de formulas<- introduce el signo igual '=' y selecciona [con el mouse] la celda con 'su rotulo'
'repite' por cada rotulo de la serie y... listo !!!
-> lo anterior deja 'casado' cada rotulo con el contenido de 'su celda' <-
si cualquier duda... comentas?
saludos,
hector.
Héctor Miguel
2005-06-22 03:31:01 UTC
Permalink
hola, Luis Miguel !
... cuando tengo... p.ej. 50 bolas, poner el titulo 1 a 1 me parece casi inabordable
... forma de hacerlo automaticamente para todas?...
suponiendo que se trara de un grafico incrustado en la hoja de calculo [el #1]
y que las celdas para los rotulos de cada punto de datos [se la serie1] inician en la celda 'A2'
podrias 'basarte' en el numero de 'puntos' [o burbujas] en la serie para 'casarlos' con cada celda [p.e.]
== copia las siguientes lineas en un modulo de codigo 'normal' ===
Sub AgregaRotulosABurbujas()
Dim Punto As Byte
With ActiveSheet.ChartObjects(1).Chart.SeriesCollection(1)
.ApplyDataLabels Type:=xlDataLabelsShowLabel
With .DataLabels
.Border.Weight = xlHairline
.Interior.ColorIndex = 19
.Interior.PatternColorIndex = 1
.Interior.Pattern = xlSolid
.Font.ColorIndex = 3
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.Position = xlLabelPositionBelow
.Orientation = xlHorizontal
End With
For Punto = 1 To .Points.Count
.Points(Punto).DataLabel.Text = "=" & _
Range("a" & Punto + 1).Address(, , xlR1C1, True)
Next
End With
End Sub

toma en cuenta que en ->Range("a" & Punto + 1)<- empieza en 1+2 = 2 [o sea el rango 'A2']
si cualquier duda... comentas?
saludos,
hector.
Luis Miguel
2005-06-22 07:23:01 UTC
Permalink
Héctor, por favor, un poco más despacio: nunca he programado en Excel,
¿puedes decirme cómo inserto este código?...

Gracias,

Luis Miguel
Post by Héctor Miguel
hola, Luis Miguel !
... cuando tengo... p.ej. 50 bolas, poner el titulo 1 a 1 me parece casi inabordable
... forma de hacerlo automaticamente para todas?...
suponiendo que se trara de un grafico incrustado en la hoja de calculo [el #1]
y que las celdas para los rotulos de cada punto de datos [se la serie1] inician en la celda 'A2'
podrias 'basarte' en el numero de 'puntos' [o burbujas] en la serie para 'casarlos' con cada celda [p.e.]
== copia las siguientes lineas en un modulo de codigo 'normal' ===
Sub AgregaRotulosABurbujas()
Dim Punto As Byte
With ActiveSheet.ChartObjects(1).Chart.SeriesCollection(1)
.ApplyDataLabels Type:=xlDataLabelsShowLabel
With .DataLabels
.Border.Weight = xlHairline
.Interior.ColorIndex = 19
.Interior.PatternColorIndex = 1
.Interior.Pattern = xlSolid
.Font.ColorIndex = 3
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.Position = xlLabelPositionBelow
.Orientation = xlHorizontal
End With
For Punto = 1 To .Points.Count
.Points(Punto).DataLabel.Text = "=" & _
Range("a" & Punto + 1).Address(, , xlR1C1, True)
Next
End With
End Sub
toma en cuenta que en ->Range("a" & Punto + 1)<- empieza en 1+2 = 2 [o sea el rango 'A2']
si cualquier duda... comentas?
saludos,
hector.
Héctor Miguel
2005-06-23 04:05:38 UTC
Permalink
hola, Luis Miguel !
... un poco mas despacio: nunca he programado en Excel
¿puedes decirme como inserto este codigo?...
-> una vez que estes en excel y con 'ese' libro como 'activo'...
-> abre el editor de visual basic
a) [menu] herramientas / macro -> editor de visual basic
b) atajo de teclado: {alt}+{f11}
-> ve a [menu] insertar / modulo
-> [en la ventana de codigo del modulo 'recien' creado]...
copia / pega las lineas de la propuesta
[desde donde dice 'Sub....' hasta donde dice 'End Sub']
-> 'regresa' a excel...
a) {alt}+Q
b) {alt}+{f4}
c) {alt}+{tab}
-> [ya de regreso en excel] 'corre/ejecuta' la macro propuesta...
a) [menu] herramientas / macro / macros... -> selecciona y 'acepta' el nombre de la macro
b) por atajo de teclado: {alt}+{f8} -> selecciona y 'acepta' el nombre de la macro

si cualquier duda [o hay datos que 'modificar']... comentas?
saludos,
hector.

Loading...