2017-02-21 38 views
-2

Как я могу добавить значения базы данных для карт для создания гибридных карт в Javaзагрузить данные из базы данных, чтобы создать диаграмму слияния в java?

// datas get from database 
"trendlines": [ 
    { 
     "line": [ 
      { 
       "startvalue": "175000", 
       "color": "#8cbb2c", 
       "thickness": "4", 
       "alpha": "60", 
       "displayvalue": "Target - $175K" 
      } 
     ] 
    } 
] 
+0

Вы смотрели в эту ссылке: //www.fusioncharts.com/dev/using-with-server-side- Языки/java/create-charts-with-data-from-a-database.html Вы уже посещаете сайт fusioncharts. –

+0

Я получил свой результат. Теперь я пытаюсь добавить с ним целевую строку. – Harikrishnan

+0

"трендовые": [ { "строка": [ { "startvalue": "175000", "цвет": "# 1aaf5d", "valueOnRight": "1", "tooltext": " Квартальный объем продаж составил $ startDataValue», "displayvalue": "цель - $ 175K" } ] } ] – Harikrishnan

ответ

4

Для того, чтобы добавить трендовый объект, который вы должны создать список массива, который будет готовить объект трендовой линии и будет вызывать метод построение внутренняя структура объекта линии тренда, внутри метода вам нужно будет создать хэш-карту, которая будет добавляться как пары ключевых значений, внутри этой хэш-карты вам нужно создать arraylist, который хранит данные объектов линии, внутри объекта линии данные shuld быть в парах ключевых значений, поэтому для этого вам нужно будет создать хэш-карту для него, в конце вам нужно добавить этот хэш-файл с объектом ararylist линии, и, наконец, этот объект arraylist будет добавлен в основной хэш-файл и вернется Это.

Пожалуйста, обратитесь этим Dropbox для образца с использованием базы данных https://www.dropbox.com/s/04dwugo4unw5uin/Fusioncharts_trendline_sample.zip?dl=0

Вы получите таблицу SQL из проекта в папке SQL.

Также вы можете проверить фрагмент кода ниже

<% 

     //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() %>