从数据库加载数据以在 java 中创建融合图表?
load data from database to create fusion chart in java?
如何将数据库值添加到地图以在 java
中创建融合图表
// datas get from database
"trendlines": [
{
"line": [
{
"startvalue": "175000",
"color": "#8cbb2c",
"thickness": "4",
"alpha": "60",
"displayvalue": "Target - 5K"
}
]
}
]
为了添加趋势线对象,您必须创建一个数组列表,它将准备趋势线对象并调用一个方法来构建趋势线对象的内部结构,在该方法中您必须创建一个哈希图它将作为键值对添加,在该哈希图中,您需要创建一个数组列表来存储行对象的数据,在行对象内部,数据应该是键值对,因此为了做到这一点,您必须创建一个hashmap 为它,最后你需要添加这个 hashmap 与线 arraylist 对象,最后这个 arraylist 对象将被添加到主 hashmap 并将 return 它。
请参阅此 Dropbox 以获取使用数据库的示例 https://www.dropbox.com/s/04dwugo4unw5uin/Fusioncharts_trendline_sample.zip?dl=0
您将从 sql 文件夹中的项目中获取 sql table。
您也可以查看下面的代码片段
<%
//prepare trendlines
ArrayList trendlines= new ArrayList();
trendlines.add(buildTrendlines("startvalue","color","displayvalue",gson));
//close the connection.
result.close();
//create 'dataMap' map object to make a complete FusionCharts datasource.
Map<String, String> dataMap = new LinkedHashMap<String, String>();
/*
gson.toJson() the data to retrieve the string containing the
JSON representation of the data in the array.
*/
dataMap.put("chart", gson.toJson(chartobj));
dataMap.put("categories", gson.toJson(categories));
dataMap.put("dataset", gson.toJson(dataset));
dataMap.put("trendlines",gson.toJson(trendlines));
FusionCharts mslineChart= new FusionCharts(
"msline",// chartType
"chart1",// chartId
"600","400",// chartWidth, chartHeight
"chart",// chartContainer
"json",// dataFormat
gson.toJson(dataMap) //dataSource
);
%>
<%!
public Map buildTrendlines(String startvalue, String color, String displayvalue, Gson gson){
Map<String, String> trendlineinner = new HashMap<String, String>();
ArrayList lines = new ArrayList();
Map<String, String> linesdata = new HashMap<String, String>();
linesdata.put("startvalue", "17022");
linesdata.put("color","#6baa01");
linesdata.put("displayvalue","Average");
lines.add(linesdata);
trendlineinner.put("line", gson.toJson(lines));
return trendlineinner;
}
%>
<%= mslineChart.render() %>
如何将数据库值添加到地图以在 java
中创建融合图表// datas get from database
"trendlines": [
{
"line": [
{
"startvalue": "175000",
"color": "#8cbb2c",
"thickness": "4",
"alpha": "60",
"displayvalue": "Target - 5K"
}
]
}
]
为了添加趋势线对象,您必须创建一个数组列表,它将准备趋势线对象并调用一个方法来构建趋势线对象的内部结构,在该方法中您必须创建一个哈希图它将作为键值对添加,在该哈希图中,您需要创建一个数组列表来存储行对象的数据,在行对象内部,数据应该是键值对,因此为了做到这一点,您必须创建一个hashmap 为它,最后你需要添加这个 hashmap 与线 arraylist 对象,最后这个 arraylist 对象将被添加到主 hashmap 并将 return 它。
请参阅此 Dropbox 以获取使用数据库的示例 https://www.dropbox.com/s/04dwugo4unw5uin/Fusioncharts_trendline_sample.zip?dl=0
您将从 sql 文件夹中的项目中获取 sql table。
您也可以查看下面的代码片段
<%
//prepare trendlines
ArrayList trendlines= new ArrayList();
trendlines.add(buildTrendlines("startvalue","color","displayvalue",gson));
//close the connection.
result.close();
//create 'dataMap' map object to make a complete FusionCharts datasource.
Map<String, String> dataMap = new LinkedHashMap<String, String>();
/*
gson.toJson() the data to retrieve the string containing the
JSON representation of the data in the array.
*/
dataMap.put("chart", gson.toJson(chartobj));
dataMap.put("categories", gson.toJson(categories));
dataMap.put("dataset", gson.toJson(dataset));
dataMap.put("trendlines",gson.toJson(trendlines));
FusionCharts mslineChart= new FusionCharts(
"msline",// chartType
"chart1",// chartId
"600","400",// chartWidth, chartHeight
"chart",// chartContainer
"json",// dataFormat
gson.toJson(dataMap) //dataSource
);
%>
<%!
public Map buildTrendlines(String startvalue, String color, String displayvalue, Gson gson){
Map<String, String> trendlineinner = new HashMap<String, String>();
ArrayList lines = new ArrayList();
Map<String, String> linesdata = new HashMap<String, String>();
linesdata.put("startvalue", "17022");
linesdata.put("color","#6baa01");
linesdata.put("displayvalue","Average");
lines.add(linesdata);
trendlineinner.put("line", gson.toJson(lines));
return trendlineinner;
}
%>
<%= mslineChart.render() %>