double の配列を取り、それらをすべて水平棒グラフに 1 行で表示するプログラムに取り組んでいます。現在、カラーリング以外は機能しています。不確定な量の行があるため、データは次のようにグラフに追加されます。
public CategoryDataset createDataset() {
DefaultCategoryDataset bardataset1 = new DefaultCategoryDataset();
for (int i = 0; i < nanoArray.length; i++) {
bardataset1.addValue(nanoArray[i], "Packet" + i, "Class A");
bardataset1.addValue(startgap, "Packet Gap" + i, "Class A");
}
}
これにより、データが適切にスタックされますが、約 300 の異なる行キーがあるため、300 の異なる色が割り当てられます。この写真を添付して、それがどのように見えるかを示します。
ご覧のとおり、これによりデータが完全に読み取れなくなります。私が望むのは、赤と青の交互の色の棒を見ることです。
編集:答えが見つかりました。jcernの方法を使用しました。またfor
、double 配列の長さを反復処理し、偶数か奇数かに基づいて色を割り当てるループも作成しました。
for (int i = 0; i < packetCount; i++) {
setSeriesToolTipGenerator(i, new StandardCategoryToolTipGenerator());
if (i % 2 == 0) {
setSeriesPaint(i, new Color(255, 0, 0));
} else {
setSeriesPaint(i, new Color(0, 0, 0));
}
}