ガントチャートの色を変更する方法
対象製品
Elixir Report 8.7J
詳細
ガントチャートのチャートウィザードには[色]タブがないため、ウィザードから色を変更できません。
変更したい場合は、チャートウィザードの[スクリプト]タブにスクリプトを入力することで変更が可能です。
次のサンプルでは、タスクの色と、現在の進行状況を表示するバーの色を変更します。
また、分かりやすくする目的で通常のグラデーションによるペイントをやめてフラットにしています。
■サンプルコード
importClass(Packages.com.elixirtech.chart2.custom.CustomDrawingSupplier);
importPackage(Packages.com.elixirtech.chart2.plot);
var chart = plot.getRenderer();
// タスクの色を変更
// 色を表す定義済み文字列は、ヘルプドキュメントの
// [2章 レポート設計]-[7.その他の機能]-[色]を参照してください
// 色は順番に使用されます
paints = ["pink","lightblue", "Khaki"];
cds = new CustomDrawingSupplier();
cds.setPaintNames(paints);
plot.drawingSupplier = cds;
// 現在の進行状況を表示するバーの色を変更
// 達成率
chart.setCompletePaint(java.awt.Color.blue);
// 未達成率
chart.setIncompletePaint(java.awt.Color.lightGray);
// グラデーションをなくしフラットにする
importClass(Packages.org.jfree.chart.renderer.category.StandardBarPainter);
chart.setBarPainter(new StandardBarPainter());
// 影をなくす
//chart.setShadowVisible(false);
■出力例
変更したい場合は、チャートウィザードの[スクリプト]タブにスクリプトを入力することで変更が可能です。
次のサンプルでは、タスクの色と、現在の進行状況を表示するバーの色を変更します。
また、分かりやすくする目的で通常のグラデーションによるペイントをやめてフラットにしています。
■サンプルコード
importClass(Packages.com.elixirtech.chart2.custom.CustomDrawingSupplier);
importPackage(Packages.com.elixirtech.chart2.plot);
var chart = plot.getRenderer();
// タスクの色を変更
// 色を表す定義済み文字列は、ヘルプドキュメントの
// [2章 レポート設計]-[7.その他の機能]-[色]を参照してください
// 色は順番に使用されます
paints = ["pink","lightblue", "Khaki"];
cds = new CustomDrawingSupplier();
cds.setPaintNames(paints);
plot.drawingSupplier = cds;
// 現在の進行状況を表示するバーの色を変更
// 達成率
chart.setCompletePaint(java.awt.Color.blue);
// 未達成率
chart.setIncompletePaint(java.awt.Color.lightGray);
// グラデーションをなくしフラットにする
importClass(Packages.org.jfree.chart.renderer.category.StandardBarPainter);
chart.setBarPainter(new StandardBarPainter());
// 影をなくす
//chart.setShadowVisible(false);
■出力例