Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

218
Vistas
Múltiples áreas de gráfico en una columna

Tengo un gráfico con múltiples áreas de gráfico. Cuando presiono un botón, se crea una nueva área de gráfico, etc. Mi problema es que después de agregar algunas áreas de gráfico, obtengo el siguiente resultado: ingrese la descripción de la imagen aquí Quiero tener cada área del gráfico en una sola columna, una tras otra de esta manera: ingrese la descripción de la imagen aquí

es posible ?

EDITAR: agregar áreas de gráfico dinámicamente ingrese la descripción de la imagen aquí

a la izquierda está el gráfico con 3 áreas de gráfico añadidas ya la derecha está el gráfico con 4 áreas.

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Utilice la propiedad ChartArea.AlignWithChartArea

Mediante el uso de las propiedades AlignWithChartArea, AlignmentOrientation y AlignmentStyle, es posible alinear o sincronizar dos o más áreas de gráfico horizontalmente, verticalmente o ambas.

Primero, establezca la propiedad AlignWithChartArea en el nombre de un objeto ChartArea. Luego, esta área del gráfico se alineará, según la configuración de AlignmentStyle, que define la alineación que se utilizará, y la configuración de AlignmentOrientation, que define los elementos del área del gráfico que se deben usar para establecer la alineación.

Entonces, para poner ChartArea2 debajo de ChartArea1:

 ChartArea2.AlignWithChartArea1; ChartArea2.AlignmentStyle = AreaAlignmentStyles.Position; ChartArea2.AlignmentOrientation = AreaAlignmentOrientation.Vertical;
over 4 years ago · Santiago Trujillo Denunciar

0

Así es como puede lograr lo que necesita, también refiriéndose a su pregunta aquí:
https://stackoverflow.com/questions/67124754/dynamically-add-chart-areas-in-vertical-alignment

Use la propiedad Position y lea los comentarios dentro del código:

 private void button1_Click(object sender, EventArgs e) { List<ChartArea> Areas = new List<ChartArea>(); int numberOfAreas = 5; chart1.Legends[0].Enabled = false; for (int k = 1; k <= numberOfAreas; k++) // YOU WANT 5 and not 4 AREAS - changed k< to k<= { var S1 = new Series(); chart1.Series.Add(S1); S1.Name = k.ToString(); for (int j = 0; j < 100; j += 10) S1.Points.AddXY(j, j / 10); S1.Color = Color.Transparent; Areas.Add(new ChartArea(k.ToString())); chart1.ChartAreas.Add(Areas[k - 1]); // IT IS k-1 and not k - we start counting from 0 S1.ChartArea = k.ToString(); chart1.ChartAreas[k - 1].AlignWithChartArea = chart1.ChartAreas[k - 1].Name; chart1.ChartAreas[k - 1].AlignmentStyle = AreaAlignmentStyles.Position; chart1.ChartAreas[k - 1].AlignmentOrientation = AreaAlignmentOrientations.Vertical; } // NOW THE IMPORTANT PART float currentHeight = 0; foreach (var itm in Areas) { itm.Position.Height = 100 / numberOfAreas; // Note: the valus are in percenteges and not absolute pixels itm.Position.Y = currentHeight; itm.Position.X = 5; itm.Position.Width = 95; currentHeight += 100 / numberOfAreas; } }

PRODUCCIÓN: ingrese la descripción de la imagen aquí

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda