I Utilisé pour Spring MVC. Ceci est mon service JavaComment changer le code dans "Camembert" dans HighCharts
@Override
public ArrayList<SampleVO1> getAvgPetalBySpecies3() {
ArrayList<SampleVO1> irisList = new ArrayList<SampleVO1>();
try {
REXP result = rEngine.eval("(ming <- tapply(iris$Petal.Length, iris$Species, mean))");
REXP result1 = rEngine.eval("names(ming)");
SampleVO1 sample1 = new SampleVO1();
sample1.setName(result1.asStringArray());
sample1.setY(result.asDoubleArray());
irisList.add(sample1);
} catch (Exception e) {
logger.error(e.getMessage());
throw new RuntimeException(e);
}
return irisList;
}
Oh! Ceci est mon VO
private String[] name;
private double[] y;
Et voici mon contrôleur
@RequestMapping("/analytics/iris3")
public String getAvgPetalbySpecies3(Model model) {
ArrayList<SampleVO1> irisList = analyticsService.getAvgPetalBySpecies3();
Gson gson = new Gson();
String irisData = gson.toJson(irisList);
model.addAttribute("irisData2", irisData);
return "analytics/visual";
}
At Last, ce JSP mon
<script type="text/javascript">
$(function() {
Highcharts.chart('pie', {
chart: {
plotBackgroundColor: null,
plotBorderWidth: null,
plotShadow: false,
type: 'pie'
},
title: {
text: ''
},
tooltip: {
pointFormat: '{series.name}: <b>{point.percentage:.1f}%</b>'
},
plotOptions: {
pie: {
allowPointSelect: true,
cursor: 'pointer',
dataLabels: {
enabled: true
},
showInLegend: true
}
},
series:
<%= request.getAttribute("irisData2") %>,
});
});
</script>
lol j'ai vu l'espace blanc ... et j'ai vérifié mon code source!
series:
[{"name":["setosa","versicolor","virginica"],"y":[1.462,4.26,5.552]}],
Je pensais que je recevais pas mal aux données de l'iris! mais mon highcharts n'aime pas ça ... Comment j'ai corrigé mon code ...?
Les données de votre série sont mal formatées. Veuillez regarder [série .data] (http://api.highcharts.com/highcharts/series%3Cpie%3E.data) pour voir comment formater correctement les données. –
ewolden
ouais ... Je sais que j'ai lu le highchart ...... mais comment changer mon service.java ... – Ming9Mang9