List of charts
Pie Chart
Chart | Chart data in JTable | Sample code | |
---|---|---|---|
PieChart2D | ChartGenerator_JTable chartMaker = new ChartGenerator_JTable(); int[][] pairs = new int[1][2]; pairs[0][0] = 1; // value pairs[0][1] = 0; // name chart = chartMaker.getPieChart(chartTitle, dataTable, pairs,""); chartPanel = new ChartPanel(chart, false); | ||
PieChart3D with rotation | ChartGenerator_JTable chartMaker = new ChartGenerator_JTable(); int[][] pairs = new int[1][2]; pairs[0][0] = 1; // value pairs[0][1] = 0; // name chart = chartMaker.getPieChart(chartTitle, dataTable, pairs,"3D counter_clockwise"); chartPanel = new ChartPanel(chart, false); | ||
RingChart | ChartGenerator_JTable chartMaker = new ChartGenerator_JTable(); int[][] pairs = new int[1][2]; pairs[0][0] = 1; // value pairs[0][1] = 0; // name chart = chartMaker.getPieChart(chartTitle, dataTable, pairs,"ring"); chartPanel = new ChartPanel(chart, false); |
Pie chart can be created using the getPieChart method. See the getChart methods section for detail.
Bar Chart
Chart | Chart data in JTable | Sample code | |
---|---|---|---|
Bar2D | ChartGenerator_JTable chartMaker = new ChartGenerator_JTable(); int no_series = dataTable.getRowCount()-1; int no_category = dataTable.getColumnCount()-2; int[][] pairs = new int[no_category][2]; for (int i=0; i<no_category; i++){ pairs[i][0] = i+1; //column i store category i pairs[i][1] = 0; //column 0 stores series name } chart = chartMaker.getCategoryChart("Bar", chartTitle, "Category", "value", dataTable, no_category, pairs, "") chartPanel = new ChartPanel(chart, false); | ||
Bar2D Horizontal Layout | ChartGenerator_JTable chartMaker = new ChartGenerator_JTable(); int no_series = dataTable.getRowCount()-1; int no_category = dataTable.getColumnCount()-2; int[][] pairs = new int[no_category][2]; for (int i=0; i<no_category; i++){ pairs[i][0] = i+1; //column i store category i pairs[i][1] = 0; //column 0 stores series name } chart = chartMaker.getCategoryChart("Bar", chartTitle, "Category", "value", dataTable, no_category, pairs, "horizontal") chartPanel = new ChartPanel(chart, false); | ||
Bar3D | ChartGenerator_JTable chartMaker = new ChartGenerator_JTable(); int no_series = dataTable.getRowCount()-1; int no_category = dataTable.getColumnCount()-2; int[][] pairs = new int[no_category][2]; for (int i=0; i<no_category; i++){ pairs[i][0] = i+1; //column i store category i pairs[i][1] = 0; //column 0 stores series name } chart = chartMaker.getCategoryChart("Bar", chartTitle, "Category", "value", dataTable, no_category, pairs, "3D") chartPanel = new ChartPanel(chart, false); | ||
Layered Bar | ChartGenerator_JTable chartMaker = new ChartGenerator_JTable(); int no_series = dataTable.getRowCount()-1; int no_category = dataTable.getColumnCount()-2; int[][] pairs = new int[no_category][2]; for (int i=0; i<no_category; i++){ pairs[i][0] = i+1; //column i store category i pairs[i][1] = 0; //column 0 stores series name } chart = chartMaker.getCategoryChart("Bar", chartTitle, "Category", "value", dataTable, no_category, pairs, "layered"); chartPanel = new ChartPanel(chart, false); | ||
Stacked Bar | ChartGenerator_JTable chartMaker = new ChartGenerator_JTable(); int no_series = dataTable.getRowCount()-1; int no_category = dataTable.getColumnCount()-2; int[][] pairs = new int[no_category][2]; for (int i=0; i<no_category; i++){ pairs[i][0] = i+1; //column i store category i pairs[i][1] = 0; //column 0 stores series name } chart = chartMaker.getCategoryChart("Bar", chartTitle, "Category", "value", dataTable, no_category, pairs, "stacked"); chartPanel = new ChartPanel(chart, false); | ||
Waterfall Bar | ChartGenerator_JTable chartMaker = new ChartGenerator_JTable(); int no_series = dataTable.getRowCount()-1; int no_category = dataTable.getColumnCount()-2; int[][] pairs = new int[no_category][2]; for (int i=0; i<no_category; i++){ pairs[i][0] = i+1; //column i store category i pairs[i][1] = 0; //column 0 stores series name } chart = chartMaker.getCategoryChart("Bar", "Product Cost Breakdown", "Expense Category", "Cost Per Unit", dataTable, no_category, pairs, "waterfall"); chartPanel = new ChartPanel(chart, false); | ||
Statistical Bar | ChartGenerator_JTable chartMaker = new ChartGenerator_JTable(); int no_series = dataTable.getRowCount()-1; int no_category = dataTable.getColumnCount()-2; int[][] pairs = new int[no_category][2]; for (int i=0; i<no_category; i++){ pairs[i][0] = i+1; //column i store category i pairs[i][1] = 0; //column 0 stores series name } chart = chartMaker.getCategoryChart("BarStat", chartTitle, "Type", "value", dataTable, no_category, pairs, ""); chartPanel = new ChartPanel(chart, false); | ||
Statistical Bar with Raw Data | ChartGenerator_JTable chartMaker = new ChartGenerator_JTable(); int no_series = dataTable.getRowCount()-1; int no_category = dataTable.getColumnCount()-2; int[][] pairs = new int[no_category][2]; for (int i=0; i<no_category; i++){ pairs[i][0] = i+1; //column i store category i pairs[i][1] = 0; //column 0 stores series name } chart = chartMaker.getCategoryChart("BarStatRaw", chartTitle, "Type", "value", dataTable, no_category, pairs, ""); chartPanel = new ChartPanel(chart, false); | ||
XY BarChart using XYDataset | ChartGenerator_JTable chartMaker = new ChartGenerator_JTable(); int no_series = (dataTable.getColumnCount()-2)/2; int[][] pairs = new int[no_series][2]; for (int i=0; i<no_series; i++){ pairs[i][0] = i*2; //column 1 stores value pairs[i][1] = i*2+1; //column 0 stores time } chart = chartMaker.getXYChart("Bar", chartTitle, "Category", "value", dataTable, no_series, pairs, "Year"); chartPanel = new ChartPanel(chart, false); |
Bar chart can be created using either getCategoryChart or getXYChart method depend on the data. See the getChart methods section for detail.
Line Chart
Chart | Chart data in JTable | Sample code | |
---|---|---|---|
Line chart using CategoryDataset | ChartGenerator_JTable chartMaker = new ChartGenerator_JTable(); int no_series = dataTable.getRowCount()-1; int no_category = dataTable.getColumnCount()-2; int[][] pairs = new int[no_category][2]; for (int i=0; i<no_category; i++){ pairs[i][0] = i+1; //column i store category i pairs[i][1] = 0; //column 0 stores series name } chart = chartMaker.getCategoryChart("Line", "Category Chart", "Release", "Class Count", dataTable, no_category, pairs,"nofill"); chartPanel = new ChartPanel(chart, false); | ||
Line Chart using XYDataset | ChartGenerator_JTable chartMaker = new ChartGenerator_JTable(); int no_series = (dataTable.getColumnCount()-2)/2; int[][] pairs = new int[no_series][2]; for (int i=0; i<no_series; i++){ pairs[i][0] = 2*i; //column x pairs[i][1] = 2*i+1; //column y } chart = chartMaker.getXYChart("Line",chartTitle, "X", "Y", dataTable, no_series, pairs, ""); chartPanel = new ChartPanel(chart, false); | ||
Scatter Line Chart | ChartGenerator_JTable chartMaker = new ChartGenerator_JTable(); int no_series = (dataTable.getColumnCount()-2)/2; int[][] pairs = new int[no_series][2]; for (int i=0; i<no_series; i++){ pairs[i][0] = 2*i; //column x pairs[i][1] = 2*i+1; //column y } chart = chartMaker.getXYChart("Line", "Line Chart", "X", "Y", dataTable, no_series, pairs,"noline"); chartPanel = new ChartPanel(chart, false); | ||
QQData2Data Chart | ChartGenerator_JTable chartMaker = new ChartGenerator_JTable(); int no_series = dataTable.getColumnCount()/2; int[][] pairs = new int[no_series][2]; for (int i=0; i<no_series; i++){ pairs[i][0] = 2*i; //column x pairs[i][1] = 2*i+1; //column y } chart = chartMaker.getXYChart("LineQQDD", "QQD2D Chart", "Group1", "Group 2", dataTable, no_series, pairs, ""); chartPanel = new ChartPanel(chart, false); | ||
QQNormal Chart | ChartGenerator_JTable chartMaker = new ChartGenerator_JTable(); int no_series = dataTable.getColumnCount(); //one y column only int[][] pairs = new int[no_series][2]; for (int i=0; i<no_series; i++){ pairs[i][0] = 0; // there is no x column pairs[i][1] = 0; //column y } chart = chartMaker.getXYChart("LineQQ", "QQNormalPlot Chart", "Data", "NormalDistribution of Data", dataTable, no_series, pairs, ""); chartPanel = new ChartPanel(chart, false); | ||
NormalDistrribution Chart | ChartGenerator_JTable chartMaker = new ChartGenerator_JTable(); int[][] pairs = new int[1][2]; pairs[0][0] = 0; //mean pairs[0][1] = 1; // stdDev chart = chartMaker.getXYChart("ND", "Normaldistribution Chart", "X", "Y", dataTable, 1, pairs, "noshape nofill "); chartPanel = new ChartPanel(chart, false); | ||
StatisticalLine Chart | ChartGenerator_JTable chartMaker = new ChartGenerator_JTable(); int no_series = dataTable.getRowCount()-1; int no_category = dataTable.getColumnCount()-2; int[][] pairs = new int[no_category][2]; for (int i=0; i<no_category; i++){ pairs[i][0] = i+1; //column i store category i pairs[i][1] = 0; //column 0 stores series name } chart = chartMaker.getCategoryChart("LineStat", "LineChart", "Type", "value", dataTable, no_category, pairs, ""); chartPanel = new ChartPanel(chart, false); | ||
StatisticalLine Chart using raw data | ChartGenerator_JTable chartMaker = new ChartGenerator_JTable(); int no_series = dataTable.getRowCount()-1; int no_category = dataTable.getColumnCount()-2; int[][] pairs = new int[no_category][2]; for (int i=0; i<no_category; i++){ pairs[i][0] = i+1; //column i store category i pairs[i][1] = 0; //column 0 stores series name } chart = chartMaker.getCategoryChart("LineStatRaw", "LineChart", "Type", "value", dataTable, no_category, pairs, ""); chartPanel = new ChartPanel(chart, false); | ||
Step Chart using XYDataset | ChartGenerator_JTable chartMaker = new ChartGenerator_JTable(); int no_series = (dataTable.getColumnCount()-2)/2; int[][] pairs = new int[no_series][2]; for (int i=0; i<no_series; i++){ pairs[i][0] = 2*i; //column x pairs[i][1] = 2*i+1; //column y } chart = chartMaker.getXYChart("Step", "Step Chart", "X", "Y", dataTable, no_series, pairs, ""); chartPanel = new ChartPanel(chart, false); |
Line chart can be created using either getCategoryChart or getXYChart method depend on the data. See the getChart methods section for detail.
Area Chart
Chart | Chart data in JTable | Sample code | |
---|---|---|---|
Area Chart using CategoryDataset | ChartGenerator_JTable chartMaker = new ChartGenerator_JTable(); int no_series = dataTable.getRowCount()-1; int no_category = dataTable.getColumnCount()-2; int[][] pairs = new int[no_category][2]; for (int i=0; i<no_category; i++){ pairs[i][0] = i+1; //column i store category i pairs[i][1] = 0; //column 0 stores series name } chart = chartMaker.getCategoryChart("Area", "Area Chart", "Category", "value", dataTable, no_category, pairs, ""); chartPanel = new ChartPanel(chart, false); | ||
Area Chart using XYDataset | ChartGenerator_JTable chartMaker = new ChartGenerator_JTable(); int no_series = (dataTable.getColumnCount()-2)/2; int[][] pairs = new int[no_series][2]; for (int i=0; i<no_series; i++){ pairs[i][0] = 2*i; //column x pairs[i][1] = 2*i+1; //column y } chart = chartMaker.getXYChart("Area", "Area Chart", "X", "Y", dataTable, no_series, pairs,""); chartPanel = new ChartPanel(chart, false); | ||
Area Chart with Time Axis | ChartGenerator_JTable chartMaker = new ChartGenerator_JTable(); int no_series = (dataTable.getColumnCount()-2)/2; int[][] pairs = new int[no_series][2]; for (int i=0; i<no_series; i++){ pairs[i][0] = 2*i; //column x pairs[i][1] = 2*i+1; //column y } String time_type = "Day"; chart = chartMaker.getXYChart("AreaTime","Area Chart", "X", "Y", dataTable, no_series, pairs, time_type); chartPanel = new ChartPanel(chart, false); | ||
Stacked Area Chart | ChartGenerator_JTable chartMaker = new ChartGenerator_JTable(); int no_series = (dataTable.getColumnCount()-2)/2; int[][] pairs = new int[no_series][2]; for (int i=0; i<no_series; i++){ pairs[i][0] = 2*i; //column x pairs[i][1] = 2*i+1; //column y } chart = chartMaker.getTableXYAreaChart("Area Chart", "X Vaue", "Y Value", dataTable, no_series, pairs, ""); chartPanel = new ChartPanel(chart, false); |
Area chart can be created using either getCategoryChart or getXYChart method depend on the data. Stacked area chart can be created using getTableXYChart method. See the getChart methods section for detail.
=Miscellaneous Charts
Chart | Chart data in JTable | Sample code | |
---|---|---|---|
Crosshair Chart | ChartGenerator_JTable chartMaker = new ChartGenerator_JTable(); int no_series = (dataTable.getColumnCount()-2)/2; int[][] pairs = new int[no_series][2]; for (int i=0; i<no_series; i++){ pairs[i][0] = 2*i; //column x pairs[i][1] = 2*i+1; //column y } chart = chartMaker.getXYChart("Line",chartTitle, "X", "Y", dataTable, no_series, pairs,""); chartPanel = new ChartPanel(chart, false); | ||
Crosshair Chart time | ChartGenerator_JTable chartMaker = new ChartGenerator_JTable(); int no_series = dataTable.getColumnCount(); int[][] pairs = new int[no_series][1]; for (int i=0; i<no_series; i++){ pairs[i][0] = i; //column x } chart = chartMaker.getCompassChart("CompassChart", dataTable, no_series, pairs, ""); chartPanel = new ChartPanel(chart, false); | ||
BoxAndWhisker Chart |
ChartGenerator_JTable chartMaker = new ChartGenerator_JTable(); int no_series = dataTable.getRowCount()-1; int no_category = dataTable.getColumnCount()-2; int[][] pairs = new int[no_category][2]; for (int i=0; i<no_category; i++){ pairs[i][0] = i+1; //column i store category i pairs[i][1] = 0; //column 0 stores series name } chart = chartMaker.getBoxAndWhiskerCategoryChart(chartTitle, "Category", "value", dataTable, no_category, pairs,""); chartPanel = new ChartPanel(chart, false); | ||
Bubble Chart |
ChartGenerator_JTable chartMaker = new ChartGenerator_JTable(); int no_series = (dataTable.getColumnCount())/3; int[][] pairs = new int[no_series][3]; for (int i=0; i<no_series; i++){ pairs[i][0] = 3*i; //column x pairs[i][1] = 3*i+1; //column y pairs[i][2] = 3*i+2; //column y } chart = chartMaker.getXYZBubbleChart("Bubble Chart", "X", "Y", dataTable, no_series, pairs,""); chartPanel = new ChartPanel(chart, false); |
The getChart methods
JFreeChart getPieChart(java.lang.String title, javax.swing.JTable table, int[][] pairs, java.lang.String other)
- Options for the getPieChart methods parameter other are: 2D/3D/ring, clockwise/counter_clockwise. 2D is the default.
JFreeChart getXYChart(java.lang.String chartType, java.lang.String title, java.lang.String xLabel, java.lang.String yLabel, javax.swing.JTable table, int numberOfSeries, int[][] pairs, java.lang.String other)
- Options for the getXYChart method's parameter chartType are: line/bar/linetime/lineqq/lineqqdd/area/areatime/step/nd/differencetime/symbolicaxis/polar. line is the default.
- Options for the getXYChart method's parameter other are: horizontal/vertical, noline/nofill/noshape, year/month/day/minute. Vertical is the default.
JFreeChart getCategoryChart(java.lang.String chartType, java.lang.String title, java.lang.String xLabel, java.lang.String yLabel, javax.swing.JTable table, int numberOfCategory, int[][] pairs, java.lang.String other)
- Options for the getXYChart method's parameter chartType are: bar/barstat/barstatraw/line/linestat/linestatraw/step/area/areatime/eventfreq/spiderweb. bar is the default.
- Options for the getCategoryChart method's parameter other are: horizontal/vertical, 3D, stacked/layered/waterfall, year/month/day/minute. Vertical is the default.
JFreeChart getTableXYAreaChart(java.lang.String title, java.lang.String xLabel, java.lang.String yLabel, javax.swing.JTable table, int numberOfSeries, int[][] pairs, java.lang.String other)
- The parameter other in getTableXYAreaChart method is not currently used.