実現したいこと
JavaFx.scene.chartを使い、円グラフを書こうとしています。
入力されたデータ(配列)を円グラフで表現するため、公式サイトのサンプルコード(https://docs.oracle.com/javase/jp/8/javafx/user-interface-tutorial/pie-chart.htm#CIHFDADD)の 17行目~25行目をfor文で書き換えて、配列の要素の数だけ取り出したデータをnew pychartDateで認識させたいのですが、方法が分かりません。
ご教授お願い致します。
発生している問題・エラーメッセージ
Sample.java:34: エラー: '\u3000'は不正な文字です ^ FXCollections.observableArrayList(
該当のソースコード
Java
1import java.io.*; 2import javafx.application.Application; 3import javafx.collections.FXCollections; 4import javafx.collections.ObservableList; 5import javafx.scene.Scene; 6import javafx.stage.Stage; 7import javafx.scene.chart.*; 8import javafx.scene.Group; 9 10public class Sample extends Application { 11@Override public void start(Stage stage) { 12 Scene scene = new Scene(new Group()); 13 stage.setTitle("Imported Fruits"); 14 stage.setWidth(500); 15 stage.setHeight(500); 16 17 /*ここがサンプルコード 18 ObservableList<PieChart.Data> pieChartData = 19 FXCollections.observableArrayList( 20 new PieChart.Data("Grapefruit", 13), 21 new PieChart.Data("Oranges", 25), 22 new PieChart.Data("Plums", 10), 23 new PieChart.Data("Pears", 22), 24 new PieChart.Data("Apples", 30)); 25*/ 26 27 //以下自分で考えたコード、pa[]はtextファイルから取ってきたデータが入った配列と仮定して設定する。 28 int[] pa = new int[3]; 29 pa[0] = 1; 30 pa[1] = 2; 31 pa[2] = 3; 32 ObservableList<PieChart.Data> pieChartData = 33 ObservableList<PieChart.Data> data = 34 FXCollections.observableArrayList( 35 for(int i = 0;i < pa.length;i++) { 36 new PieChart.Data( Integer.toString(i), pa[i]), 37 } 38 ); 39 /*32~38行目を 40 ObservableList<PieChart.Data> data = 41FXCollections.observableArrayList( 42new PieChart.Data(0, 1), 43new PieChart.Data(1, 2), 44new PieChart.Data(2, 3)); 45となるように書きたい 46 */ 47 final PieChart chart = new PieChart(pieChartData); 48 chart.setTitle("Imported Fruits"); 49 50 51 ((Group) scene.getRoot()).getChildren().add(chart); 52 stage.setScene(scene); 53 stage.show(); 54 } 55 56 public static void main(String[] args) { 57 launch(args); 58 } 59}
試したこと
for文の位置を変えましたが、うまくいきません。
また私がが書いたコードでは「,」の扱いができてないのでしょうか。
補足情報(FW/ツールのバージョンなど)
openjdk version "1.8.0_265"
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/10/08 07:57