2017-02-16 11 views
1

私はJHeatChartを使用して以下のヒートマップチャートを生成します。小さいピクセルが境界線を持たないので、値が隣のピクセルと同じであれば大きなピクセルに結合することがわかります。どのようにして各ピクセルの境界線を設定することができ、同じ値を持つときにクリアを分けることができます。私が徐々に色を変えずにいくつかの色を設定したいのであれば、どうすればいいですか?あなたJHeatChartJHeatChartヒートマップチャートで小さなピクセルの境界線を設定する方法は?

enter image description here

答えて

1

drawHeatMap()メソッドをオーバーライドし(未検証)、draw()を起動する前に別の境界の色を指定:

private void drawHeatMap(Graphics2D chartGraphics, double[][] data) { 
    … 
    Graphics2D heatMapGraphics = heatMapImage.createGraphics(); 
    for (int x=0; x<noXCells; x++) { 
     for (int y=0; y<noYCells; y++) { 
      // Set colour depending on zValues. 
      heatMapGraphics.setColor(getCellColour(data[y][x], lowValue, highValue)); 
      int cellX = x*cellSize.width; 
      int cellY = y*cellSize.height; 
      heatMapGraphics.fillRect(cellX, cellY, cellSize.width, cellSize.height); 
      // Draw boundary 
      Rectangle2D block = new Rectangle2D.Double(
       cellX, cellY, cellSize.width, cellSize.height)); 
      heatMapGraphics.setPaint(boundaryColor); 
      heatMapGraphics.draw(block); 
     } 
    } 
    … 
} 
+0

申し訳ありませんが、このチャートは、そこJheatChartに、JheatChartにより生成されますXYBlockRendererはありません。 – Sucy

+0

同じアプローチを使用することができます。 – trashgod

+0

詳細な説明はありますか?ありがとうございました。 – Sucy

関連する問題