python的图形界面作图工具

Python的图形库太全了,导致我现在都有点要转到python麾下的冲动了。

Graphical Representations of Data

Over the years many different plotting modules and packages have been developed for Python. For most of that time there was no clear favorite package, but recently matplotlib has become the most widely used. Nevertheless, many of the others are still available and may suit your tastes or needs better. Some of these are interfaces to existing plotting libraries while others are Python-centered new implementations.

Image Processing and Analysis

  • The PIL Toolkit provides a very powerful set of tools for manipulating images. Documentation

  • PyQtGraph is a pure-python graphics library built on PyQt4 and numpy. It is intended for use in mathematics / scientific /engineering applications. The library provides widgets and graphicsItems for displaying / analyzing live image data (including 16-bit) as well as translate/scale/rotatable region-of-interest widgets for interactively slicing numpy arrays. The library is very fast due to its heavy leverage of numpy and Qt's graphicsView framework.

Plotting Tools

  • Matplotlib is an Open Source plotting library designed to support interactive and publication quality plotting with a syntax familiar to Matlab users. Its interactive mode supports multiple windowing toolkits (currently: GTK, Tkinter, Qt, and wxWindows) as well as multiple noninteractive backends (PDF, postscript, SVG, antigrain geometry, and Cairo). Plots can be embedded within GUI applications or for non-interactive uses without any available display in batch mode. Matplotlib provides both a Matlab-like functional interface as well as an object oriented interface. IPython has a "pylab" mode which is specifically designed for interactive plotting with matplotlib.

  • Veusz is a GPL scientific plotting package written in Python and PyQt, designed to create publication-quality output. Graphs are built up from simple components, and the program features an integrated command-line, GUI and scripting interface. Veusz can also be embedded in other Python programs, even those not using PyQt.

  • Chaco is a device-independent 2D plotting package based on a DisplayPDF API. It supports fast vector graphics rendering forinteractive data analysis (read: fast live updating plots) and custom plot construction. Chaco is easy to embed in python GUI applications (wxWindows, Qt) and provides nice abstractions for overlays and tools (select regions, zoom/pan, cross-hairs, labels, data inspectors, etc.). Chaco is able to output to any raster format supported by PIL, as well as PDF, PostScript and SVG backends. See the gallery for screenshots and code examples.

  • KonradHinsen has some plotting support in his ScientificPython package, for example TkPlotCanvas.

  • Michael Haggerty has a Gnuplot module that interfaces with the GNUPLOT package.

  • plot_wrap A module by Mike Miller which wraps the functions in the GNU plotutils package.

  • BLT BLT is an extension to the tk widgets that can produce X/Y plots and bar charts. The BLT package can be used through the Pmw package, a framework for the creation of megawidgets built on top of Tkinter.

  • PyQwt is a set of Python bindings for the Qwt C++ class library which extends the Qt framework with widgets for scientific and engineering applications.

  • GUIQwt is a Python library based on Qwt providing efficient 2D data-plotting features (curve/image visualization and related tools) for interactive computing and signal/image processing application development.

  • DISLIN DISLIN is a high-level and easy to use graphics library for displaying data as curves, bar graphs, pie charts, 3D-color plots, surfaces, contours and maps. The software is available for several C, Fortran 77 and Fortran 90 compilers. For some operation systems, the programming languages Python and Perl are also supported by DISLIN. DISLIN is free for the Linux and FreeBSD operating systems and for the MS-DOS and Windows 95/NT compilers GCC, G77 and ELF90. Other DISLIN versions are available at low prices and can be tested free of charge.

  • Mayavi Starting from Mayavi2, the 3D data visualization program Mayavi is fully scriptable from Python, can be integrated in larger applications, and exposes a simple pylab/matlab-like interface for plotting arrays.

  • gdmodule GD is a graphics library for the creation of GIF pictures, written by Thomas Boutell. gdmodule is an Python extension for this library. It can do lines, arcs, fills, fonts and can also manipulate other GIF pictures. Included in the gdmodule is a graphing module, which can produce line plots from data.

  • Gist Extension to the gist graphics library, which is part of another

    numeric environment named [ftp://ftp-icf.llnl.gov/pub/Yorick yorick]. It can produce line, contour, surface plots on quadrilateral meshes. On top of the low-level interface the people from LLNL have build an object-oriented interface which can also doisosurface and 3D slicing plots together with light and script based animation. The interface is well documented. The package is now part of the LLNL Python distribution. Gist originally ran only under Unix-like operating systems. The latest source and a Windows installer are available from the University of Tokyo.

  • pgplot Extension to the pgplot graphics library, a portable, device independent graphics package for making simple scientificgraphs. The library is intended for making graphical images of publication quality with minimum effort on the part of the user. Allfunctions are directly callable from Python, through the use of SWIG for wrapper code generation. Pgplot has drivers for many different graphics formats and devices, although there are problems with the MS-Windows driver.

  • Py-OpenDX OpenDX is the open-source version of the IBM Data Explorer (DX). DX is a visualization system providing a full set of tools for manipulating, rendering and animating data, especially 3D data from simulations or acquired from observations. It provides a GUI, a scripting interface and the API C libraries. Py-OpenDX is a Python binding for the OpenDX API. Currently only the DXLink library is wrapped. That wrapper allows one to start up a DX executive and communicate with it via the DXL API.

  • VTK VTK is an OO-framework for visualisation, written in C++ with bindings to TCL, Python and Java. It's not really a plottingpackage, but a visualisation system, where one needs to program to get a picture. It's very huge and resource demanding and best used on hardware with good graphics performance. It uses mainly OpenGL for rendering, so it can not produce vector graphics or high quality postscript output. Besides of that VTK is very powerful and can produce really great views of your data.

  • RPy -- a Python interface to the R programming languageR is a large, robust package for doing math and statistics; itincludes many, many graphing options.

  • R/SPlus Python InterfaceAnother R interface. Currently it allows Python code to call

    R functions, and write R code to create Python objects and call Python functions and methods. This allows Python programmers unfamiliar with the syntax of R to easily use its functionality.

  • PyX is a library for creating figures in Postscript and PDF, which uses TeX/LaTeX for the text output.

  • Biggles is another plotting library that supports multiple output formats, as is Piddle.

  • Pychart is a library for creating EPS, PDF, PNG, and SVG charts. It supports line plots, bar plots, range-fill plots, and pie charts.

  • PyNGL is a Python interface to the high quality 2D scientific visualizations in the NCAR Command Language (NCL).

  • pygooglechart is a Python interface to the Google Chart API.

  • WHIFF includes built in support for generating Adobe Flash chart widgets using either the amCharts charting package or theOpen Flash Chart package. The generated charts may be embedded in dynamic web pages.

  • PyQtGraph is a pure-python graphics library built on PyQt4 and numpy. It is intended for use in mathematics / scientific /engineering applications. The library is very fast due to its heavy leverage of numpy and Qt's graphicsView framework. Major features: 1) a feature-rich plotting system, and 2) an image display system with translate/scale/rotatable region-of-interest widgets.

  • pyla is a set of pure-python 3 (3.x) libraries for 2D/3D plotting using Gnuplot, linear algebra (vector-matrix) operation, ode (ordinary differential equation) solvers, optimization and nonlinear algebraic equation solvers. It is in alpha release and its gplot library has been released. pyla-gplot is a very simple yet powerful library very similar to Gnuplot.py but works under python 3.x and does not require Numpy.

Also of Note

  • There is an interface to the OpenGL library called PyOpenGL that can be used to write sophisticated visualization tools from scratch.

  • The FXPy bindings to the FOX GUI library support OpenGL, so might be a good starting point for new applications.

转载于:https://www.cnblogs.com/shaoguangleo/archive/2011/07/06/2805747.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这是一个VB6的IDE插件(Addin),使用VB6的IDE直接设计Python的界面。 Python和VB都是能让人快乐的编程语言,我使用了Python之后,很多自己使用的工具都使用Python开发或改写了,因为最终实现的Python代码实在太短了(相比VB),有时候Python一行代码就可以实现VB一个函数的功能。 Python就是这种让人越用越开心的语言。 不过说实在,使用Python开发GUI界面还是麻烦了一些了,自带的标准库Tkinter使用起来非常简单,不过对于习惯了VB拖放控件完成界面设计的同学来说,还是不够人性化。TK也有一个工具叫GUI Builder,不过它使用Layout布局,不够直观,而且界面简陋,用起来也不爽。 至于PyQt/wxPython等GUI库,尽管有可视化设计工具,但总感觉做一般的轻量级应用是杀鸡用牛刀,学习起来也比较复杂,而且不够环保,不够低碳,要带一个很大的库,需要目标机器上夜同样安装了PyQt/wxPython,做不了绿色软件。 所以最终的结果是我更喜欢Tkinter,用起来很简单,绿色环保,真正的跨平台,一个py文件到处运行(担心泄密就编译成pyc)。 很多人都认为TK的界面不够美观,不过导入Python自带的标准TTK主题库,界面非常Native,不输PyQt/wxPython。 此Addin默认启用TTK支持,也可选择关闭。 总而言之,轻量级GUI,TK+TTK足够。 使用此Addin,你可以不用写一句代码就可以生成一个完整可运行的Python的GUI界面,支持python 2.X和3.X。 安装方法:将压缩包解压到你希望的目录,然后执行Setup.exe完成注册插件过程,打开VB6就可以用了。 在VB窗体上设计完成界面后(你可以大胆的设置各控件的属性,Addin尽量将其翻译为tkinter的控件属性),点工具栏上的VisualTkinter(图标为一片橙红色羽毛),再点'生成代码'按钮,即可生成可运行的Python代码,可以拷贝至剪贴板或保存至文件。 一般情况下你可以不用再改变tkinter的控件属性,但是如果你熟悉tkinter,需要更多的控制,可以一一核对各属性,并且修改,再生成代码。 除了用来设计界面外,此ADDIN内置的各控件属性列表可以做为编程参考,比较完整,除了极少数我认为大多数人都不用的属性外,属性定义基本上是我从官方的tkinter文档直接翻译的。 如果还没有VB6,网上找一个VB6精简版即可(建议使用12M的版本,6M的版本也可以使用,不过工具栏图标无法显示,可以通过菜单执行此插件)。 经过网友测试,完美支持WinXP,Windows 7, Windows 8。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值