各位大佬好,我发起了一个类似 MATLAB 的开源项目,名字叫 PyMiner,是用 python 写的,目前已开源 2 个多月,最近收到了很多讨论,其中有一些是技术方面的质疑。
因此想向各位大佬请教下,我是用 python+pyqt5 做界面,numpy 做数据处理的基础,在外部开源包的基础上搭建自有的函数库,采用插件商店的形式完成高性能场景(设想的是 python 调用 c c++开发的插件),技术方案是否有问题?
希望各位大佬不吝赐教,谢谢!
1
rim99 2020-10-14 22:04:02 +08:00
支持楼主。建议前后端的模块界限要清晰些,以后迭代的版本多了,有可能会用 js 写前端。
|
2
learningman 2020-10-15 01:25:58 +08:00 5
如果这个你还要问人,我觉得你写不出 Matlab 。。。
|
3
black11black 2020-10-15 01:50:40 +08:00 1
问个小白问题,python 做的 matlab 是什么意思,只是在 numpy 的基础上加 GUI 而已吗,还是把 matlab 语法解释器也加进去
|
4
Perry 2020-10-15 07:17:18 +08:00 via iPhone
这名字我以为是挖矿的 pyminer
|
5
LokiSharp 2020-10-15 07:53:19 +08:00 via iPhone
编辑器不要用 PyQt,直接用 Qt,PyQt 做个简单 GUI 没问题,拿来做编辑器级别的复杂 GUI 性能差异明显。
|
6
py2cn OP @black11black 主要还是 numpy 加 GUI,会移植 matlab 函数,语法解析没做过,想做但是不会弄
|
7
py2cn OP @learningman 是一群人一起写,我尽量避免把大家带偏
|
11
12tall 2020-10-15 08:30:24 +08:00
资瓷资瓷,另外 http://www.py2cn.com/ 访问不了了似乎
|
12
crella 2020-10-15 08:35:20 +08:00 via Android 1
楼主有没有参考过 octave ?
|
13
shoujiaxin 2020-10-15 08:43:09 +08:00 via iPhone 4
且不说 Python 和 Matlab 在计算方面的性能差距,兼容 90% Matlab 语法的 Octave 都没敢说自己是开源的 Matlab,numpy+GUI 跟 Matlab 又有什么关系?
|
14
threebr 2020-10-15 08:48:48 +08:00 1
同楼上, 楼主可以试试 10k*10k 的矩阵运算, 在我电脑上 matlab 6 秒, numpy 9 秒, 就算不考虑性能, matlab 的各种内置函数和工具包真的抄都抄不完
|
15
Leigg 2020-10-15 08:52:36 +08:00 via Android
你晓得人家用了多少人才和时间写出来的不
|
16
mathzhaoliang 2020-10-15 08:56:35 +08:00
你的软件和直接写 Python,或者是写一个 Python 模块有什么区别吗?(只是带一个 ide 不算)
|
18
php01 2020-10-15 09:54:14 +08:00 6
这个站的所有人加起来,每人每天为此项目工作 8 小时,持续 20 年,也做不出来 Matlab
|
19
laike9m 2020-10-15 10:01:02 +08:00
怎么还在想 Matlab,定位成一个基础的数据处理工具不行么?还是你对 Matlab 有哪些功能根本没数?
|
20
shangyu7 2020-10-15 12:29:28 +08:00 via Android 1
lz 搬砖搭了个棚子,就想着要做世界第一高楼了
|
21
yuelang85 2020-10-15 16:55:54 +08:00 1
本来点进来想说,国内有一个项目就是这么做的。进来一看项目名字,这不就是你吗。
哈哈哈哈哈哈,精神上支持你,这方面实在是不懂 |
22
ixinshang 2020-10-15 17:30:01 +08:00
万事开头难,支持一下。
|
23
laqow 2020-10-15 17:56:16 +08:00 via Android
感觉 R 和 octave 等都可以替代 matlab,另外 matlab 在很多简单计算的场合性能还没有 python 好。能开源实现一个 m 代码到 exe 格式的 matlab runtime 就很好了。
|
24
firefox12 2020-10-15 18:23:44 +08:00
如果你对这方面缺乏基本的了解,最好不要做这个。这是整个项目的架构师,带偏就是浪费时间。
|
26
algas 2020-10-15 20:03:19 +08:00
我觉得 fork octave 是比较好的选择,至少架构不用重新设计,语法解释器也有现成可用的,短期就能看见团队产出。
和 matlab 比较 octave 缺点一大堆,不说 simulink 几乎没有,单是画图就让人痛苦不已;还有程序效率严重依赖矢量化编程技术,不知道 jit 技术能不能克服一下这一点。所以说,基于 octave 能做的事情还有很多。 |
27
Taojun0714 2020-10-15 21:50:36 +08:00 1
@laqow 你对 matlab 的核心 simulink 一无所知
|
28
Tink 2020-10-15 23:25:15 +08:00 via Android
大工程啊
|
30
futou 2020-10-16 00:16:17 +08:00
|
31
by73 2020-10-16 00:17:30 +08:00
Matlab 非常庞大,它不仅仅是科学计算,还包括仿真之类的,我觉得你还是应该先界定下范围😂
|
32
thedrwu 2020-10-16 00:25:17 +08:00 via Android
MATLAB 就是各行各业的 toolbox 和 simulink 。
如果只是简单地算算矩阵画画图,fortran+gnuplot 更轻巧方便。 |
33
zzj0311 2020-10-16 01:21:53 +08:00 via Android
几十年堆出来的💩山 你以为换种语言就不用堆几十年了🐴
|
34
liukrystal 2020-10-16 05:08:43 +08:00 via iPhone 1
中国的程序员喜欢赚快钱,难得有 lz 这样的人肯静下心来搞点事情,但 Matlab 不是你一个人能搞得定了,ls 有位老哥说得好,这个站所有的人写 20 年也搞不定 matlab 。
|
35
pabupa 2020-10-16 08:22:41 +08:00 via Android
matlab 可不仅仅只是计算呀!他还有更细化的科目门类,这些都是要有专业人士参与才行的吧......
|
37
cedoo22 2020-10-16 08:30:01 +08:00 via iPhone
其它不论,单单数学里的那一堆理论就不是软件工程师能轻易搞定的
|
38
feilaoda 2020-10-16 11:49:10 +08:00
走自己的路,不用听太多别人怎么说
|
39
tfdetang 2020-10-16 11:50:53 +08:00
如果是已经会 numpy 与 pandas 的用户,jupyter lab 就已经能覆盖大部分的数据分析+画图场景了; 如果目标用户是作为 matlab 的替代品,那如何让 matlab 使用者快速过渡过来是个关键问题
|
40
ligong 2020-10-20 15:41:33 +08:00
个人建议,matlab 这个东西,最重要的是工业界的使用和支持,所以,相比起一个软件,更接近一门语言的生态环境和状态。
可以成立一个开源组织,建立某种协议,争取各行各业的人能有个传递贡献的地方,类似一门语言的无数个库,前端用的 npm 啊,rust 的 crate 啊。 |