JFreeChart is a chart library for the Java platform that supports a wide range of charts including pie charts (2D and 3D), bar charts (horizontal and vertical, regular or stacked, with optional 3D-effects), line charts, XY plots, scatter plots, time series charts, high/low/open/close charts, candlestick plots, Gantt charts, Pareto charts, combination charts, and more. It is suitable for use in applications, applets, servlets, and JSP.
JOGL is a reference implementation of the Java bindings for the OpenGL API, which is designed to provide hardware-supported 3D graphics. It provides full access to the APIs in the OpenGL 1.4 specification as well as nearly all vendor extensions, and integrates with the AWT and Swing widget sets.
Imagero is a Java imaging library. Supported file types include BMP, GIF, TIFF, PNG, JNG, MNG, JPEG (including CMYK and 12-bit grey), PSD, PBM, PGM, PPM, TGA, EPS, EPSI, EPSF, AI, PDF, MRW, CRW, NEF, DCR, and DNG. Imagero can read thumbnails and can read and write metadata (IPTC, EXIF, XMP, Wang Annotations, Image Resource Blocks, Image File Directrories, JPEG Markers). Accurate color conversion is done with ICC profiles. TIFF tools allow you to split and merge TIFF images, add and remove IFDs. Lossless JPEG to TIFF and TIFF to JPEG conversion can be done. Lossless JPEG operations are supported.
Poor Man's Imaging Wrapper a clean and simple API wrapper over JAI, Java2D, ImageIO, and AWT. It supports a set of imaging operations (read, write, scale/resize, crop, grayscale, add transparency, rotate, add border, flip/mirror, add text, overlay, blur, sharpen, etc.) with simple direct calls to the API. If you want to switch from Java2D to JAI, all you need to do is add JAI jars to the classpath. It supports GIF encoding if PJA tools jars are available in the classpath.
YAJOGLB (Yet Another Java OpenGL Binding) allows Java programmers to access their native OpenGL library. The library is implemented using Java's JAWT to access the native windowing system, along with JNI calls to OpenGL. Programs using the binding must use the shared library provided, since this is not a pure Java library.