QCChart2D for Android Studio Charting Tools

Version 2.4

Add high-speed line plots, bar plots, scatter plots, open-high-low-close plots, candlestick plots, bubble plots, contour plots, histogram plots, polar plots, antenna plots, ring charts, and pie charts, to Android Applications  using the QCChart2D charting library for Android Studio.
JPEG Images of some of the example programs that are included with the software, displayed on an Google Nexus 7 tablet. Click on the thumbnail image to view at actual size.


Financial and Stock Charting


Engineering, Medical Charting and Graphics


Scientific Charting and Data Visualization


Statistical Charting

Business and Marketing Charting


The QCChart2D for Android Studio charting toolkit, written entirely using the Android/Java framework and the android.graphics library, is for developers who want to add sophisticated interactive charting graphics to their Android applications. The android charting library  includes support for linear, logarithmic, polar and antenna coordinate systems used by engineering and scientific end users. It also includes support for advanced time/date and elapsed time coordinate systems required by business end users. Advanced user interface functions allow users to interact with applications using the touch interface,  adding annotations, selecting, marking and moving data points, drilldown, tooltips and zooming into a particular chart region.


QCChart2D for Android Studio (2.4)

The standard Android programming IDE for it first seven or eight years was Eclipse. In our first version of QCChart2D for Android, we supplied all of the libraries in Eclipse compatible jar formats, and used the Eclipse project structure for making the libraries, and the example programs. The Eclipse version of the software is still available using the model number AND-CHT-DEVR. In 2014, Google has changed course, and now considers Android Studio the official IDE for writing and deploying Android applications. They have since discontinued support for Eclipse. Therefore we now offer this version of the software, where the libraries are made using Android Studio and all of the example projects are in Android Studio format, and use a newer UI system based on Android fragments. The library distribution format has been changed from jar-based, to the Android aar file format. Similar to the jar and zip format, aar is basically a zip file with a designated list of items describing Android specific contents. The aar library file format is easier to integrate into Android Studio based applications than the older jar format.



Ordering Information

License Information

QCChart2D for Android User Manual – View the QCChart2D user manual using Adobe Acrobat.

Frequently Asked Questions  – See a collection of frequently asked questions concerning the QCChart2D software.

Download Trial Version (30 MB)  – Unzip the downloaded Trial_QCChart2DAndroidStudioR2x4.zip file, preferably to drive c:,  preserving the directory structure.  This results in the software being installed in the \Quinn-Curtis directory. As a bare minimum read Chapters 1, 25 and 26 of the manual, \Quinn-Curtis\androidstudio\docs\QCChart2DAndroidStudioManual.pdf. Chapter 25 will have usage information with respect to Android Studio.  Post any questions you might have in the Quinn-Curtis Forum – QCChart2D for Java.

*Requires that your target system has the current version of the Android Studio installed, and you already have either a physical device, or a emulator configured to run Android apps.

Have any questions ? Contact: info@quinn-curtis.com


Related Quinn-Curtis Products

New Features added to Revision 2.3

Event-Based Charting

QCChart2D now supports event-based plotting. In event-based plotting, the coordinate system is scaled to the number of event objects. Each event object represents an x-value, and one or more y-values. Since an event object can represent one or more y-values for a single x-value, it can be used as the source for simple plot types (simple line plot, simple bar plot, simple scatter plot, simple line marker plot) and group plot types (open-high-low-close plots, candlestick plots, group bars, stacked bars, etc.). Event objects can also store custom data tooltips, and x-axis strings. The most common use for event-based plotting will be for displaying time-based data which is discontinuous: financial markets data for example. A more detailed description of Event-based charting is found in this white paper on the subject: An Event-based Coordinate System for Use in the Plotting of Discontinuous Time Data.

  • Remove arbitrary (non-periodic) days, holidays for example, from the time/date scale.
  • Allow for a sub range of a day which crosses 24:00, i.e. 18:00 to 3:00.
  • Allow for multiple, active time ranges within the same 24-hour period, i.e. 9:00 to 12:00 and 14:00 to 18:00.
  • Smooth panning and zooming of data across discontinuous time boundaries.
  • Allow for exceptions to the predefined set of rules. For example, be able to include a weekend day, or a specific set of hours normally excluded from the scale.

Feature Summary

  • Android Studio IDE  with Android SDK’s installed.
  • Based on the android.graphics API – Compatible with Android components and applications.
  • Plot Types – Line plots, area plots, bar plots, line marker plots, floating bars, scatter plots, group plots, open-high-low-close plots, error bar plots, pie charts, contour plots, candlestick plots, line gap plots, cell plots, histogram plots, arrow plots, bubble plots, polar plots, multi-line plots, stacked line plots, box and whisker plots, floating stacked bar plots, ring plots, antenna plots, versa plots.. An unlimited number of plot types can be combined in the same chart.
  • Datasets – Datasets hold the data plotted in the chart. Charts can plot an unlimited number of datasets, each dataset can contain an unlimited number of data points. Datasets can hold numeric, elapsed time, and Java GregorianCalendar date/time  based data with millisecond resolution. Mark data points invalid, forcing a break in plotted lines.


Android Simple Dataset Viewer Chart Android Group Dataset Viewer Chart
Simple dataset viewer  Group dataset viewer


  • Dataset Viewer – A new dataset viewer class will display simple and group datasets in a grid-like table. The grid can be positioned anywhere on the chart. Individual grid cells can be edited and the associated chart immediately updated using the synchronize feature.
  • Coordinate Systems – Linear, logarithmic, time/date, elapsed time and polar coordinate systems. An unlimited number of coordinate system, and axes, can be overlaid in the same plotting area of a graph.
  • Time/Date Coordinate Systems – The time/date scale is specified using Java GregorianCalendar objects. The time/date scales take into account the varying number of days in months and years. The scales can also take into account non-continuous time/date scales where a 5-day week is used, or where a full day consists of a specific time interval that can be something less than a 24-hour day. For example, it is possible to define a time/date scale where weekends are excluded and the day consists of the hours between 9:30 AM and 4:00 PM.
  • Elapsed Time Coordinate System – The software supports elapsed time plotting, based on a simple TimeSpan class.  The elapsed time scale can be either horizontal or vertical. This includes new dataset types (ElapsedTimeSimpleDataset, ElapsedTimeGroupDataset), a new coordinate system class (ElapsedTimeCoordinates), a new axis class (ElapsedTimeAxis) and a new axis labels class (ElapsedTimeAxisLabels).
  • Event-Based Coordinate System – Event-based charting further expands the plotting capability of QCChart2D – adding features important to the financial services industries.   The includes new dataset types EventSimpleDataset, EventGroupDataset), a new coordinate system class (EventCoordinates), a new axis class (EventAxis) and a new axis labels class (EventAxisLabels). For more information see: An Event-based Coordinate System for Use in the Plotting of Discontinuous Time Data.


.Net Antenna Axes
 Linear axes     Logarithmic axes Polar axes Date axes    Antenna axes
Vertical Date/Time Axis Elapsed Time Axis
Vertical date/time axis Standard time axes Time axes with custom range Elapsed time axis  Axis labels 

Examples of linear, logarithmic, polar and time/date axes – click to enlarge

  • Axis Types – Linear, logarithmic, time/date, event, and polar axis types. All axis types have manual and auto-scaling modes for setting axis ranges. Axis auto-scaling modes handle multiple datasets, group data and contour data. A chart can have an unlimited number of axes.
  • Axis Labels – Axes can have decimal, exponential, time, date, string and multi-line labels. Programmers can define custom numeric and time/date axis labels.
  • Chart Titles – Charts can have a main title, a subhead and a footer. Axes can have horizontal and vertical titles.
  • Grid Options – Grid lines of any line style and color can highlight major and minor axis tick marks.
  • Export Chart Images – using the JPEG format.
  • Import jpeg Image objects – Use jpeg image objects as plot elements in a chart, or as a background object.
  • Legends for All Plot Types – Position horizontal and vertical legends anywhere in a chart. A chart can have an unlimited number of legends.
  • Touch Support – A group of classes implementing touch event delegates can locate, select and move chart objects like data plots, axes, titles, and legends


Android Chart Zoomming Android Chart Zooming
Simple zooming – before picture Simple zooming – after picture
Android Super Zoom Android Super Zoom
Super zooming – before picture Super zooming – after picture


  • Simple and Super Zooming – Zoom a simple xy axis pair, or simultaneous zoom an unlimited number of x- and y-axes.


The MagniView cursor magnifies what is under it



  • MagniView – Similar  to zooming, the touch controls a “magnifying” rectangle as it passes over an existing chart. The area of the chart within the bounds of the magnifying rectangle is “magnified” and continuously redrawn in a separate window. The MagniView class works with charts that use a simple xy axis pair,  and charts that combine one or more coordinate systems.
  • Panning – Use the new MoveCoordinates class to pan data in the x- and y-dimension. Touch and drag in the plot area and rescale the graph proportionally


   Example of a data cursor and markers – click to enlarge



  • Data Cursors – XOR data cursors are used to position a cursor over data points in a plot.
  • Data Markers – Drop special marker symbols on to the data presented in a graph, much like a bookmark in a word processing document.


        Examples of a annotations – click to enlarge



  • Graph Annotations – Add an unlimited number single and multi-line text objects, arrows and geometric objects to a chart.




  • Data ToolTips – Select a data point with a touch and popup a tooltip window that displays the data x- and/or y-values for the data points. Programmers can create custom information displays for tooltip windows.
  • Data Compression – Large datasets can be compressed, increasing display speed without loss of detail.
  • Based on the android.graphics API – Compatible with Android components and applications.
  • 100% Java and XML Code – The software is entirely written in Java and XML.
  • Documentation and Demo/Example Programs – The software includes a comprehensive 400 page user manual with many programming examples,  and 75 complete chart examples.


QCChart2D Developer Licensing


  • Our license agreement can be found here.
  • The QCChart2D Developer License is available in a Developers Version (model # AND-CHT-DEVR) that does not time out. Free updates for two years.
  • The QCChart2D Developer License is licensed to a single individual. It cannot be used by multiple people at the same company, unless a separate license is purchased for each person. Site licenses are also available. Contact sales@quinn-curtis.com with details of how many seats you wish to purchase and we will respond with a quote.
  • The QCChart2D software does not use a redistributable license.  The basic developer license permits you to include QCChart2D as part of your application and distribute an unlimited number  royalty free.


QCChart2D Redistributable Licensing


    • The QCChart2D Software does not use a redistributable license, The basic developer license permits you to include QCChart2D as part of your application and distribute an unlimited number of copies of your application, royalty free. We do not allow developers to use this software to create a graphics toolkit (a library or any type of graphics component that will be used in combination with a program development environment) for resale to other developers.

Custom Programming Services


  • QCChart2D for Android Studio is an extremely powerful and flexible software package. It contains over 1000 methods and properties in more than 100 classes. The user manual and  help file documentation are more than 1000 pages. This can be overwhelming to the average programmer who wants to start programming today and have the prototype of an application working in a week.
  • The variety of user interfaces for charting applications is as diverse as the industries using the software. The end-user of an application at a mutual fund expects to interact with the chart in a manner different than that of an end-user in health care. The same can be said for other industries: semiconductors, quality control, teaching, biotechnology, etc.
  • That is why we have written so many outstanding example programs, pulled from a wide variety of industries using many different styles of user interface.
  • We know that your application may be similar to, but still uniquely different from any of our example programs. To that end we offer our programming services to write for you a custom example program that demonstrates how to code the chart format and user interface you want. That jump start to your project can save you many weeks of work and make you look like a chart programming genius. All  you have to be able to do is describe in detail what you want the example to do.
  • Using QCChart2D for Android Studio, expertise includes writing applications that can be run on workstations, and applets that can run in web browsers.  For more information or a quote, please contact our sales department at sales@quinn-curtis.com.
  • Doesn’t have the features you need ? Let us know what those are so we can add them in a subsequent release. Contact: info@quinn-curtis.com


Ordering Information

Click here to go to Download Ordering

Description Model # Price
QCChart2D Android Developer Software AND-CHT-DEVR $225