コード例 #1
0
        /// <summary>
        /// Вывод гистограммы по компоненте V
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void ButtonGistV_Click(object sender, EventArgs e)
        {
            FormGist formGistogramV = procedures.CreateFormGist(gistRGB[5]);

            formGistogramV.Text += " Компонента цвета V";
            formGistogramV.chartGistogram.ChartAreas[0].AxisX.Minimum = 0;
            formGistogramV.chartGistogram.ChartAreas[0].AxisX.Maximum = 1;
            formGistogramV.Show();
        }
コード例 #2
0
        /// <summary>
        /// Вывод гистограммы по компоненте B
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void ButtonGistB_Click(object sender, EventArgs e)
        {
            FormGist formGistogramB = procedures.CreateFormGist(gistRGB[2]);

            formGistogramB.Text += " Компонента цвета B";
            formGistogramB.chartGistogram.ChartAreas[0].AxisX.Minimum = 0;
            formGistogramB.chartGistogram.ChartAreas[0].AxisX.Maximum = 255;
            formGistogramB.Show();
        }
コード例 #3
0
        /// <summary>
        /// Показать гистограммы распределения пикселей по X/Y
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void ButtonShowGist_Click(object sender, EventArgs e)
        {
            FormGist formGistogramX = procedures.CreateFormGist(gistGor);
            FormGist formGistogramY = procedures.CreateFormGist(gistVert);

            formGistogramX.Text += " Распределение выделенных пикселей по оси X";
            formGistogramY.Text += " Распределение выделенных пикселей по оси Y";
            formGistogramX.chartGistogram.ChartAreas[0].AxisX.Minimum = 0;
            formGistogramY.chartGistogram.ChartAreas[0].AxisX.Minimum = 0;
            formGistogramX.chartGistogram.ChartAreas[0].AxisX.Maximum = bitmapTemp.Width;
            formGistogramY.chartGistogram.ChartAreas[0].AxisX.Maximum = bitmapTemp.Height;
            formGistogramX.Show();
            formGistogramY.Show();
        }
コード例 #4
0
        /// <summary>
        /// Создание формы гистограммы
        /// </summary>
        /// <param name="gistParTemp"></param>
        /// <returns></returns>
        public FormGist CreateFormGist(List <Stat_analysis.ElementGist> gistParTemp)
        {
            FormGist formGistogram = new FormGist();

            try
            {
                formGistogram.Activate();
                //Вывод данных на гистограмму распределения
                Series seriesStatisticalPar = new Series();
                Series seriesStatisticalPar2 = new Series();
                float  SumInt = 0, SumPar = 0;
                //Относительные величины
                for (int i = 0; i < gistParTemp.Count; i++)
                {
                    SumPar += gistParTemp[i].Y;
                }
                //
                for (int i = 0; i < gistParTemp.Count; i++)
                {
                    seriesStatisticalPar.Points.Add(
                        new DataPoint(Math.Round((gistParTemp[i].Xmin + gistParTemp[i].Xmax) / 2, 2), gistParTemp[i].Y / SumPar));
                    SumInt += gistParTemp[i].Y;
                    seriesStatisticalPar2.Points.Add(
                        new DataPoint(Math.Round((gistParTemp[i].Xmin + gistParTemp[i].Xmax) / 2, 2), SumInt / SumPar));
                }
                seriesStatisticalPar2.ChartArea          =
                    seriesStatisticalPar.ChartArea       = "ChartArea1";
                seriesStatisticalPar2.ChartType          =
                    seriesStatisticalPar.ChartType       = SeriesChartType.Column;
                formGistogram.chartIntegral.Palette      =
                    formGistogram.chartGistogram.Palette = ChartColorPalette.BrightPastel;
                formGistogram.chartGistogram.Series.Add(seriesStatisticalPar);
                formGistogram.chartIntegral.Series.Add(seriesStatisticalPar2);
                formGistogram.seriesDensity = seriesStatisticalPar;
            }
            catch (Exception e1)
            { MessageBox.Show(e1.Message); }
            return(formGistogram);
        }