私はシリーズであるXYPlotと塗りつぶしのない動的に追加された2つの形状の注釈を持っています(したがって、それぞれのシリーズポイントが見えます)。注釈の上にある一連のツールヒント(マウスポインターが現在指している一連の点の座標を示す)を表示することは可能ですか?または、どのようにツールヒントを表示するために要素を並べ替えることができますか?形状の注釈の上のJFreechartシリーズのツールチップ
4
A
答えて
9
私はあなたが最後に描かれているプロットに形の注釈を追加していると思われます。代わりに、Layer.BACKGROUND
のレンダラーに追加します。以下に示すように、円はではありません。ではツール先端が(20,20)で覆い隠されていません。また、(30、30)がであるのに対して、(10、10)はではなく、は線の注釈によって影響を受けることに注意してください。
import java.awt.BasicStroke;
import java.awt.Color;
import java.awt.geom.Arc2D;
import java.awt.geom.Ellipse2D;
import java.util.Random;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartFrame;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.annotations.XYLineAnnotation;
import org.jfree.chart.annotations.XYShapeAnnotation;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.chart.plot.XYPlot;
import org.jfree.chart.renderer.xy.XYLineAndShapeRenderer;
import org.jfree.data.xy.XYDataset;
import org.jfree.data.xy.XYSeries;
import org.jfree.data.xy.XYSeriesCollection;
import org.jfree.ui.Layer;
/**
* @see http://stackoverflow.com/questions/6797012
* @see http://stackoverflow.com/questions/6604211
*/
public class ArcTest {
private static final Random r = new Random();
private static final Color blue = Color.blue;
private static final BasicStroke stroke = new BasicStroke(2.0f);
private static final double PI = 180d;
private static final int X = 8;
private static final int Y = 0;
private static final int W = 6 * X;
private static final int H = 3 * X;
public static void main(String[] args) {
JFreeChart chart = ChartFactory.createXYLineChart(
"ArcTest", "X", "Y", createDataset(),
PlotOrientation.VERTICAL, true, true, false);
XYPlot plot = chart.getXYPlot();
XYLineAndShapeRenderer renderer =
(XYLineAndShapeRenderer) plot.getRenderer();
renderer.setBaseShapesVisible(true);
Ellipse2D.Double circle = new Ellipse2D.Double(X, X, 20, 20);
renderer.addAnnotation(new XYShapeAnnotation(
circle, stroke, blue), Layer.BACKGROUND);
XYLineAnnotation line = new XYLineAnnotation(X, Y, X, H, stroke, blue);
plot.addAnnotation(line);
Arc2D.Double arc = new Arc2D.Double(X, Y, W, 2 * H, PI, PI, Arc2D.OPEN);
plot.addAnnotation(new XYShapeAnnotation(arc, stroke, blue));
ChartFrame frame = new ChartFrame("Test", chart);
frame.pack();
frame.setVisible(true);
}
private static XYDataset createDataset() {
XYSeriesCollection result = new XYSeriesCollection();
XYSeries series = new XYSeries("ArcTest");
series.add(0, 0);
series.add(10, 10);
series.add(20, 20);
series.add(30, 30);
series.add(W, W);
result.addSeries(series);
return result;
}
}
関連する問題
- 1. JFreeChart注釈
- 2. Google Chartsツールチップ - 注釈
- 3. ハイチャート:y軸上の注釈
- 4. GWT注釈付きタイムラインチャート - 範囲セレクタのその他のシリーズ
- 5. r幾何学図形の上に値を注釈する
- 6. 休止状態の注釈混乱
- 7. 外部キー休止状態の注釈
- 8. CSSの形状にツールチップをつける
- 9. Javaクラスの注釈仕様ファイル形式?
- 10. EJB上の注釈ベースのインターセプタ
- 11. jfreechartのスタックバーにツールチップを追加する
- 12. ハイチャート:ツールチップのシリーズ名の書式
- 13. JFreeChartで折れ線グラフに点を注釈しますか?
- 14. Spring mvc注釈検証のカスタム注釈
- 15. Eclipse上の自分の注釈上の操作(プラグイン)
- 16. サイズイメージピンの注釈
- 17. スウィフトマップキットの注釈
- 18. Nashornの注釈
- 19. ユニットテストの注釈?
- 20. 式の注釈
- 21. Objectifyfilterの注釈
- 22. jfreechartのライン上のポイント
- 23. jfreechartのグラフ上のマウス
- 24. 図形座標でのMatplotlib注釈ラベルの座標の取得
- 25. Highstock:最初の列のシリーズ名をツールチップ上で動的にする方法
- 26. シリーズのスクロールに伴って注釈位置が更新されない
- 27. グループの1点の注釈を整形する
- 28. Javaアダプタの注釈
- 29. 複数の注釈
- 30. PythonのPEP8注釈
あなたは[こちら](http://sites.google.com/site/drjohnbmatthews/jfreechartdemo)見_label_を意味しますか? – trashgod
私は形状の注釈として円を追加するプロットを持っています。しかし、これを私のシリーズポイントに追加すると、それらはカバーされます(ただし、塗りつぶしはありません)。したがって、ツールチップが機能しないようにします。私は注釈をつけることができ、可能ならば私のツールのヒントを持っていたいと思っています – jpo