none
c# chart RRS feed

  • Pregunta

  • hola necesito personalizar la paleta de colores del control chart en c#

    si me podrian pasar algun codigo para personalizar la paletta de colores , y si puede ser con un random  de 

    colores , muchas gracias

    lunes, 1 de septiembre de 2014 21:03

Respuestas

  • Por ejemplo, un formulario, y un chart al que le has agregado algunas series

    using System;
    using System.Drawing;
    using System.Windows.Forms;
    
    namespace WindowsFormsApplication1
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }
    
            private void Form1_Load(object sender, EventArgs e)
            {
                chart1.Palette= System.Windows.Forms.DataVisualization.Charting.ChartColorPalette.None; 
    
                Random rnd = new Random();
                Color[] paleta = new Color[chart1.Series.Count];
    
                for (int k = 0; k < paleta.Length; k++)
                {
                    paleta[k] = Color.FromArgb(rnd.Next(256), rnd.Next(256), rnd.Next(256));
                }
    
                chart1.PaletteCustomColors = paleta;
            }
        }
    }

    la rutina genera una paleta con un color para cada serie en el chart, establecido de manera aleatoria.

    No necesariamente tiene que ser dinámico el número de entradas en la paleta. Si quieres que tenga cinco entradas, llenas un array de 5 colores y listo.

    Lo importante es el None en la propiedad Palette del Chart.


    [W]


    • Editado [Walter] lunes, 1 de septiembre de 2014 21:27
    • Marcado como respuesta franco cabrera lunes, 1 de septiembre de 2014 21:44
    lunes, 1 de septiembre de 2014 21:27
  • Pues armas el arreglo. Siguiendo el ejemplo

    Color[] paleta = {Color.Red, Color.Aquamarine, Color.FromArgb(16253)};


    [W]

    • Marcado como respuesta franco cabrera martes, 2 de septiembre de 2014 21:17
    lunes, 1 de septiembre de 2014 21:56

Todas las respuestas

  • Por ejemplo, un formulario, y un chart al que le has agregado algunas series

    using System;
    using System.Drawing;
    using System.Windows.Forms;
    
    namespace WindowsFormsApplication1
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }
    
            private void Form1_Load(object sender, EventArgs e)
            {
                chart1.Palette= System.Windows.Forms.DataVisualization.Charting.ChartColorPalette.None; 
    
                Random rnd = new Random();
                Color[] paleta = new Color[chart1.Series.Count];
    
                for (int k = 0; k < paleta.Length; k++)
                {
                    paleta[k] = Color.FromArgb(rnd.Next(256), rnd.Next(256), rnd.Next(256));
                }
    
                chart1.PaletteCustomColors = paleta;
            }
        }
    }

    la rutina genera una paleta con un color para cada serie en el chart, establecido de manera aleatoria.

    No necesariamente tiene que ser dinámico el número de entradas en la paleta. Si quieres que tenga cinco entradas, llenas un array de 5 colores y listo.

    Lo importante es el None en la propiedad Palette del Chart.


    [W]


    • Editado [Walter] lunes, 1 de septiembre de 2014 21:27
    • Marcado como respuesta franco cabrera lunes, 1 de septiembre de 2014 21:44
    lunes, 1 de septiembre de 2014 21:27
  • muchas gracias y para pasarle coleres fijos como haria?

    q tengo q cambiar?

    lunes, 1 de septiembre de 2014 21:44
  • Pues armas el arreglo. Siguiendo el ejemplo

    Color[] paleta = {Color.Red, Color.Aquamarine, Color.FromArgb(16253)};


    [W]

    • Marcado como respuesta franco cabrera martes, 2 de septiembre de 2014 21:17
    lunes, 1 de septiembre de 2014 21:56