Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / C++ |
![]() ![]() |
xamelione25 Member Откуда: Сообщений: 70 |
Помогите перевести код с python на c++ дополнительно добавив вывод значений в excel из строки 25
********************************** import numpy as np if __name__ == '__main__': import matplotlib.pyplot as plt lambd1 = 0.1 N = 10000 def expa(lambd, N): import random import math xi = [] yi = [] sum = 0 sig = 0 for i in range(N): xi.append(random.random()) yi.append(-1/lambd * math.log(xi[i])) sum += yi[i] my = sum / N for i in range(N): sig = (yi[i] - my) ** 2 sig = sig / (N - 1) return yi arr = expa(lambd1, N) def test_exponential(lambd, arr): count, bins, ignored = plt.hist(arr, 30, density=True) print(*list(zip(bins, lambd * np.exp(-lambd * bins))), sep='\n') plt.plot(bins, lambd * np.exp(-lambd*bins), linewidth=1, color='y') i = 0 plt.grid() plt.show() s = test_exponential(lambd1, arr) |
||
20 фев 21, 15:44 [22284126] Ответить | Цитировать Сообщить модератору |
Dimitry Sibiryakov Member Откуда: Сообщений: 52921 |
Забей, это переводу не поддаётся. Posted via ActualForum NNTP Server 1.5 |
20 фев 21, 16:35 [22284160] Ответить | Цитировать Сообщить модератору |
xamelione25 Member Откуда: Сообщений: 70 |
Dimitry Sibiryakov, ну подается или нет, мне нужно просто таже самое выполнить только на c++ просто нарисовать график и его опорные точки по которым он строиться - вывести в иксель |
20 фев 21, 17:54 [22284189] Ответить | Цитировать Сообщить модератору |
Dima T Member Откуда: Сообщений: 15689 |
С++ тебе зачем? Такие задачи на нем неудобно решать, возьми C#, производительность почти такая же и есть готовые библиотеки под твою задачу. |
20 фев 21, 17:58 [22284191] Ответить | Цитировать Сообщить модератору |
White Owl Member Откуда: Сообщений: 12682 |
xamelione25, Заплатишь за перевод? |
20 фев 21, 17:59 [22284194] Ответить | Цитировать Сообщить модератору |
xamelione25 Member Откуда: Сообщений: 70 |
Dima T, White Owl, поймите я сам понимаю что некоторые не просто так на питоне сделали... у меня основа уже сделана на c++ и мне нужно просто сделать график, даже правильнее сказать не сам мне график сделать как просто значения координат точек вывести в иксель по которым я потом смогу в самому икселе график построить мне сама прорисовка графика не так важна Сообщение было отредактировано: 20 фев 21, 18:02 |
20 фев 21, 18:04 [22284196] Ответить | Цитировать Сообщить модератору |
Dimitry Sibiryakov Member Откуда: Сообщений: 52921 |
Как тебе уже сказали в предыдущем топике: выводи данные в CVS файл. Всё упрощается тем, что они у тебя числовые. В чём проблема? Posted via ActualForum NNTP Server 1.5 |
||
20 фев 21, 18:42 [22284207] Ответить | Цитировать Сообщить модератору |
xamelione25 Member Откуда: Сообщений: 70 |
Dimitry Sibiryakov, Да проблема не с выводом в excel ... проблема в том что мне нужно просто координаты формируемого графика вывести (даже не сам график) .... хоть в txt ...(в excel не сильно принципиально) а там это выполнено в питоне..... вот у меня возник ступор.... чтобы сделать аналогично на c++ |
20 фев 21, 20:15 [22284238] Ответить | Цитировать Сообщить модератору |
Dimitry Sibiryakov Member Откуда: Сообщений: 52921 |
Арифметические действия не отличаются. Правда у питона арифметика длинная, так что и в С++, возможно, придётся взять библиотеку длинной арифметики. С какой именно операцией у тебя проблема? Posted via ActualForum NNTP Server 1.5 |
||
20 фев 21, 20:30 [22284242] Ответить | Цитировать Сообщить модератору |
xamelione25 Member Откуда: Сообщений: 70 |
Dimitry Sibiryakov,
ну смотрите, у меня есть программа на с++
мне нужно чтобы процедура
|
|||||||
20 фев 21, 20:52 [22284256] Ответить | Цитировать Сообщить модератору |
mayton Member Откуда: loopback Сообщений: 51017 |
Не знаю Питон но я-бы спросил следующее. Что-за библиотека Numpy. Что-то с числами? Длинная арифметика? Нужно найти ей аналог в сях. Что за отсутсвие типизации в шапке функции? Какой тип она возвращает. import numpy as np if __name__ == '__main__': import matplotlib.pyplot as plt lambd1 = 0.1 N = 10000 def expa(lambd, N): Предположительно это может быть аналог std::vector<double> expa(double lambd, int N) { } Но я-бы еще проверил. Чортов змей выводит типы в рантайме. |
20 фев 21, 22:38 [22284287] Ответить | Цитировать Сообщить модератору |
xamelione25 Member Откуда: Сообщений: 70 |
mayton, Да питоновский код он чисто чтобы показать сам факт формирования координат графика.... Я его вставил, чтобы просто показать, то как там эти координаты вычисляются/генерируются. Там тоже самое фактически есть и в коде c++ в том что я скинул... Но там нету просто вывода самих этих координат графика... У меня сама проблема то в том что мне нужно чтобы у меня эти координаты отображались |
20 фев 21, 22:46 [22284289] Ответить | Цитировать Сообщить модератору |
Dimitry Sibiryakov Member Откуда: Сообщений: 52921 |
Как это нет? Там же в каждой второй строчке что-то выводится в f1. Posted via ActualForum NNTP Server 1.5 |
||
20 фев 21, 23:10 [22284294] Ответить | Цитировать Сообщить модератору |
mayton Member Откуда: loopback Сообщений: 51017 |
Непонятно зачем там что-то про Excel написано. Это только сбивает с толку читающего. Лучше сразу писать что выводим в текстовый файл в нужном формате. |
20 фев 21, 23:18 [22284295] Ответить | Цитировать Сообщить модератору |
xamelione25 Member Откуда: Сообщений: 70 |
mayton, Dimitry Sibiryakov, вот посмотрите как получается на скрине итоговый вывод значений - вот мне так же нужно чтобы у меня выводилось или в txt или xlsx, с помощью кода c++ К сообщению приложен файл. Размер - 137Kb Сообщение было отредактировано: 21 фев 21, 00:04 |
21 фев 21, 00:10 [22284303] Ответить | Цитировать Сообщить модератору |
Dimitry Sibiryakov Member Откуда: Сообщений: 52921 |
Ну значит берите и строчку за строчкой гугльте. Потом пишите аналог этой строчки на С++. Про отдельные особо заковыристые строки можете спросить здесь. А чтобы "у меня есть <нагугленные много нипанятных букаф>, а мне нужно чтобы они делали <другие нагугленные буквы>" - это так на форуме не работает. PS: И таки да, два приведённых листинга делают совершенно разные вещи. Posted via ActualForum NNTP Server 1.5 |
||
21 фев 21, 01:20 [22284316] Ответить | Цитировать Сообщить модератору |
mayton Member Откуда: loopback Сообщений: 51017 |
Это что?import matplotlib.pyplot as plt Поддержка графического виджета для рисования графиков и диаграмм? Как это переносить на С++? Подозреваю что никак. Тогда вызывать из С++ Python приложение как процесс? Какое-то извращение выходит. |
22 фев 21, 14:08 [22284741] Ответить | Цитировать Сообщить модератору |
Alex_Ustinov Member Откуда: Nickel Сообщений: 3722 |
это стиль милторга |
22 фев 21, 21:33 [22284925] Ответить | Цитировать Сообщить модератору |
NekZ Member Откуда: Stuttgart, Baden-Württemberg. Сообщений: 3577 |
Nuitka в помощь |
23 фев 21, 11:38 [22285059] Ответить | Цитировать Сообщить модератору |
mayton Member Откуда: loopback Сообщений: 51017 |
NekZ, учитывая нулевой уровень вопрощающего, данный совет столь-же полезен как и совет мастера Йоды - "использовать силу". |
23 фев 21, 12:08 [22285069] Ответить | Цитировать Сообщить модератору |
Siemargl Member Откуда: 010100 Сообщений: 6422 |
https://matplotlib-cpp.readthedocs.io/en/latest/ Сообщение было отредактировано: 23 фев 21, 15:33 |
|||||
23 фев 21, 14:13 [22285131] Ответить | Цитировать Сообщить модератору |
mayton Member Откуда: loopback Сообщений: 51017 |
Хм.. не знал про Matplotlib. |
23 фев 21, 14:21 [22285135] Ответить | Цитировать Сообщить модератору |
Все форумы / C++ | ![]() |