На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
  
> Статистические функции в .NET , в проекте должны быть сложные математические расчеты
    Всем доброго времени суток.
    Нужно использовать в проекте на C# .NET (VS2005) много статистических функций: к примеру, получить распределение Вейбулла или функцию Лапласа, в перспективе что-нибудь для решения уравнений численными методами.
    В классе Math нет ничего подобного. К слову, весь необходимый функционал есть в Excel - если бы можно было использовать функции оттуда - это было бы замечательно.

    И еще маленький вопросик: какой (бесплатный) компонент для построения графиков (по возможности аналог TChart из Builder/Delphi) лучше всего использовать в .NET?
    :)
    Сообщение отредактировано: Raistlin -
      Цитата Raistlin @
      В классе Math нет ничего подобного. К слову, весь необходимый функционал есть в Excel - если бы можно было использовать функции оттуда - это было бы замечательно.


      Я сам еще не пробовал, но слышал, что Excel функции можно использовать из библиотеки Microsoft.Office.Interop.Excel (microsoft.office.interop.excel.dll). После этого в программе можно инстанциировать Excel обьект и использовать все его функции.
      Тут есть описание:

      http://msdn2.microsoft.com/en-us/library/wss56bz7(VS.80).aspx
        Raistlin, для .Net Steema(TChart что в борланде) выпустили сборку, еслть даже бесплатный вариант TChartLite - я использую уже долгое время и очень доволен. поройся на их сайте, - там будет нужно зарегистрироваться, и они дают качать бесплатную версию
          А на codeProject математический фреймворк какой нить поискать не пробывыли?
            Miha_Dnepr
            Спасибо :lol: я тоже доволен.
            Еще из бесплатных компонентов для построения графиков натыкался на ZedGraph, nPlot - эти не пробовал.
            Alexus
            Увы, нет.

            К вопросу об использовании функций из Excel:
            Нэймспейс Microsoft.Office.Interop.Excel содержит все необходимое, как и говорил Vladimir
            Для его использования нужно добавить COM Reference наподобие "Microsoft Excel 12.0 Object Library" в проект.
            Сообщение отредактировано: Raistlin -
              Raistlin, ZedGraph тоже очень хороший проект, но так как я в билдере работал долгое время, и привык к поведеню ТЧарта, то не стал заморачиваться и прилепил его к дот.нет проекту :)
                Miha_Dnepr
                Я поторопился ) с TeeChart возникли проблемы, аналогичные этим: http://www.berneda.com/publicnews/steema/public/teechartfornet/lite/51000000.htm
                Грубо говоря, добавляю компонент с Toolbox на форму (C#, Windows Forms) и получаю сообщение об ошибке. Однако, примеры, поставляемые вместе с TeeChart, компилируются и работают без проблем. С учетом того, что я скачал последнюю версию, из тех, что нашел на сайте - немного напрягло то, что там даже не была указана версия .NET, под которую заточена сборка.
                В общем, время не ждет, и я скачал nPlot. :) Хотя тоже давний пользователь C++ Builder.
                Использую VS2005, .NET 2.0.
                Сообщение отредактировано: Raistlin -
                  Raistlin, Честно говоря, я не совсем понимаю, с какими проблемами ты столкнулся, но у меня все нормально работает... Правда, я последний раз обновлял версию этого компонента примерно год назад... тогда и версия была указана и проблем не было.. мож, сейчас появились. З.Ы. юзаю то же самое, что и ты
                    Доброго времени суток =)

                    Использование функций Excel через Microsoft.Office.Interop.Excel меня перестало устраивать из-за низкого быстродействия. Кстати, я использую их следующим образом:

                    ExpandedWrap disabled
                      using Microsoft.Office.Interop.Excel;
                      using IExcel = Microsoft.Office.Interop.Excel;
                       
                      namespace SomeNamespace
                      {
                          static class Calculator
                          {
                              static private IExcel.ApplicationClass _excel = new IExcel.ApplicationClass();
                              static private IExcel.Workbook _workbook;
                       
                              static Calculator()
                              {
                                  _workbook = _excel.Workbooks.Add(Type.Missing);
                              }
                       
                              static public void DoSomething(double x)
                              {
                                  //функция НОРМСТРАСП из Excel
                                  double result = _excel.WorksheetFunction.NormSDist(x);
                              }
                          }
                      }


                    По-прежнему ищу мощную библиотеку математических функций, желательно с уклоном в мат.статистику и теорию вероятности :)

                    C# .NET, VS2005-2008
                    Сообщение отредактировано: Raistlin -
                      Ну, во-первых, теория вероятностЕЙ...
                      посмотри в эту сторону: Math.Net - это из бесплатных. Есть еще 2 варианта посолиднее, но платные.
                      Да, вот вспомнил про сайт http://alglib.sources.ru/ - пока что мне хватало всех алгоритмов, которые там есть. есть реализации на C#. Все сделано очень круто. Автору большой респект.
                      Сообщение отредактировано: Miha_Dnepr -
                        Цитата Raistlin @
                        Alexus
                        Увы, нет.
                        А что, нам сделать это за тебя?
                          Цитата Miha_Dnepr @
                          Ну, во-первых, теория вероятностЕЙ...

                          Очепятался :lol: точнее, обговорился.
                          Цитата Miha_Dnepr @
                          посмотри в эту сторону: Math.Net - это из бесплатных. Есть еще 2 варианта посолиднее, но платные.

                          Пробежался по возможностям... неплохо, есть от чего отталкиваться. Спасибо.
                          А что за платные варианты?
                          Цитата Miha_Dnepr @
                          Да, вот вспомнил про сайт http://alglib.sources.ru/ - пока что мне хватало всех алгоритмов, которые там есть. есть реализации на C#. Все сделано очень круто. Автору большой респект.

                          Знаем. Пользуемся. :yes:
                          Цитата ANDLL @
                          А что, нам сделать это за тебя?

                          Не прошу искать, тем более лично вас, всего лишь спрашиваю. Кстати, там я уже успел порыскать.
                          Сообщение отредактировано: Raistlin -
                          0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                          0 пользователей:


                          Рейтинг@Mail.ru
                          [ Script execution time: 0,0302 ]   [ 16 queries used ]   [ Generated: 10.04.25, 12:25 GMT ]