Dựa trên những gì bạn đang nói, một ngôn ngữ kịch bản có mục đích chung có lẽ là lựa chọn tốt nhất của bạn, miễn là nó có khả năng vẽ đồ thị nào đó mà bạn có thể truy cập (dù là tích hợp hay nhập khẩu).
Theo đó, MATLAB sẽ hoạt động, mặc dù bạn sẽ phải chơi đồ chơi với độ rộng đường, ký hiệu và trục cho các ô chất lượng trình bày. Đưa ra các tiêu chí của bạn, tôi muốn nói rằng điểm yếu lớn của MATLAB là sắp chữ toán học chi tiết; MATLAB có thể sử dụng một số nhãn TeX, nhưng có một số lệnh LaTeX không thể xử lý, vì vậy tôi nhớ phải quay lại và cắt và dán một số nhãn LaTeX từ PDF trong Adobe Illustrator.
Python + NumPy sẽ hoạt động để nhập dữ liệu, vì numpy.loadtxt
làm cho việc nhập dữ liệu văn bản không gây đau đớn. Tại thời điểm đó, bạn có thể chọn giữa matplotlib và Gnuplot (có giao diện Python thông qua Gnuplot.py ; không có sự phát triển tích cực nào trên giao diện kể từ năm 2008, nhưng một lần nữa, Gnuplot có thay đổi tất cả nữa không, mặc dù nó vẫn tiếp tục phát hành? ). Trình bao bọc PyAsy của MatthewEmmett cũng có thể hoạt động, tùy thuộc vào những gì bạn muốn làm. Matplotlib có khả năng sắp xếp toán học tuyệt vời (như Barron lưu ý) và thao tác dữ liệu có thể được thực hiện bằng NumPy, SciPy hoặc bất kỳ gói Python nào khác mà bạn muốn ném vào dữ liệu của mình.
Vấn đề tôi gặp phải với gnuplot là nó thực sự được xây dựng chỉ cho âm mưu. Tôi không rõ cách thao túng dữ liệu trong ngôn ngữ kịch bản lệnh gnuplot. Về cơ bản, tôi đã thực hiện tất cả các thao tác dữ liệu của mình trước khi xuất dữ liệu thành văn bản vì tôi không thể tìm ra cách thực hiện khác. Bạn có thể sử dụng gnuplot để đánh giá các công thức và thực hiện một số thao tác, nhưng đối với tôi, Python có cú pháp tự nhiên hơn rất nhiều và có tiện ích chung lớn hơn gnuplot. Tôi không muốn phải học một ngôn ngữ khác chỉ để làm một việc trừ khi đó là ngôn ngữ thực sự tự nhiên, dễ học. (Hoặc trừ khi tôi bị ép buộc.)
Tecplot 360 có một loại vấn đề tương tự. Tecplot 360 tạo ra các cốt truyện tuyệt vời, đặc biệt là 3D. Có một số điều bạn có thể làm với Tecplot 360 bằng cách sử dụng GUI tương đối dễ học mà bạn có thể khó thực hiện trong gói âm mưu khác. Lần cuối cùng tôi sử dụng Tecplot là 6 hoặc 7 năm trước; Rõ ràng, họ đã thêm rất nhiều chức năng kể từ đó. Thao tác dữ liệu có thể được thực hiện thông qua lập chỉ mục, cắt hoặc thiết lập các vùng. Số lượng dẫn xuất có thể được tính bằng các phương trình. Bạn cũng có thể thực hiện Chuyển đổi Fourier của dữ liệu của mình, thực hiện phép nội suy (hoặc phá hoại) và thực hiện một số việc khác. Không rõ làm thế nào để sắp chữ toán học. Tôi đoán bạn có thể hack đầu ra HTML từ Tecplot và thêm MathJax hoặc MathML? Theo tôi, nhược điểm của Tecplot là nó không miễn phí (có nghĩa là như một công cụ, bạn có thể không thể mang nó theo mình từ công việc này sang công việc khác), kiểu sắp xếp toán học iffy và kịch bản thao tác dữ liệu phức tạp đòi hỏi phải học ngôn ngữ macro của Tecplot. Ưu điểm chính là khả năng vẽ đồ thị 3D của nó vượt xa matplotlib và MATLAB bằng một cú sút xa. Có thể bó dữ liệu lô bằng cách sử dụng ngôn ngữ macro / script của Tecplot và gọi các tập lệnh Python bên ngoài (với một số chức năng hạn chế). Ngoài ra, tương tự như MATLAB, có một GUI bạn có thể sử dụng lại nếu bạn không muốn học tập lệnh của Tecplot. (GUI của Tecplot có đầy đủ tính năng hơn MATLAB.) Ưu điểm chính là khả năng vẽ đồ thị 3D của nó vượt xa matplotlib và MATLAB bằng một cú sút xa. Có thể bó dữ liệu lô bằng cách sử dụng ngôn ngữ macro / script của Tecplot và gọi các tập lệnh Python bên ngoài (với một số chức năng hạn chế). Ngoài ra, tương tự như MATLAB, có một GUI bạn có thể sử dụng lại nếu bạn không muốn học tập lệnh của Tecplot. (GUI của Tecplot có đầy đủ tính năng hơn MATLAB.) Ưu điểm chính là khả năng vẽ đồ thị 3D của nó vượt xa matplotlib và MATLAB bằng một cú sút xa. Có thể bó dữ liệu lô bằng cách sử dụng ngôn ngữ macro / script của Tecplot và gọi các tập lệnh Python bên ngoài (với một số chức năng hạn chế). Ngoài ra, tương tự như MATLAB, có một GUI bạn có thể sử dụng lại nếu bạn không muốn học tập lệnh của Tecplot. (GUI của Tecplot có đầy đủ tính năng hơn MATLAB.)
Các công cụ dựa trên LaTeX như TikZ và PGFPlots dường như không được tạo ra cho trường hợp sử dụng của bạn. Điểm yếu ở đây là thao tác dữ liệu; TikZ và PGFPlots là những công cụ LaTeX tuyệt vời. Tôi ước tôi biết làm thế nào để sử dụng chúng tốt hơn. Vì họ là LaTeX, tôi đoán quy trình làm việc đang cắt và dán dữ liệu cần thiết vào LaTeX và vẽ sơ đồ. Bạn có thể thực thi các chương trình bên trong LaTeX, nhưng tôi không thấy khả năng đó nhất thiết phải giúp bạn như thế nào, vì trong bài thuyết trình hoặc tài liệu, trường hợp sử dụng mà bạn mô tả cho thấy có lẽ bạn sẽ chỉ giữ Sản phẩm hoàn thiện. Có lẽ bạn ổn với quy trình làm việc đó; cả hai công cụ này đều có tiếng là được thiết kế tốt và tạo ra những con số chất lượng cao.
Cuối cùng, Adobe Illustrator là một công cụ tốt để chỉnh sửa các lô, như bạn đã nói; những thiếu sót cũng như bạn đã nói, thiếu tính kịch bản hoặc khả năng lặp lại, nhưng không có gì vượt qua được một chương trình chỉnh sửa đồ họa nếu bạn muốn thực hiện các điều chỉnh nhỏ.