0

JChart2D の軸の色を変更するにはどうすればよいですか。

これまでのところ、私が見つけた最も近いものは次のようなものです:

chart.setForeground(Color.BLUE);

残念ながら、これにより Axis と Grid の両方がすべて変更されます。私が探しているのは、異なる色の複数の yAxis を持つことです。

これはどのように達成できますか?

4

2 に答える 2

2

ライブラリを変更して再コンパイルしました...

そのために、IAxis.java に次のコードが追加されました。

 /**
   * The property key defining the <code>color</code> property. Use in
   * combination with
   * {@link #addPropertyChangeListener(String, PropertyChangeListener)}.
   */
  public static final String PROPERTY_COLOR = "IAxis.PROPERTY_COLOR";  

  /**
   * Returns the color of the axis
   * @return The chosen java.awt.Color or null if the decision for the color
   *         should be made by the corresponding <code>Chart2D</code>.
   */
  public Color getColor();

  /**
   * Set a <code>java.awt.Color</code> for this axis.
   * <p>
   * 
   * @param color
   *          the <tt>Color</tt> to set.
   */
  public abstract void setColor(Color color);

AAxis.java に次のコードが追加されました。

  /** The color property. */
  private Color m_color = Color.black;

  /**
    * Get the <code>Color</code> this color will be painted with.
    * <p>
    * 
    * @return the <code>Color</code> of this instance
    */
  public final Color getColor() {
    return this.m_color;
  }

  /**
   * <p>
   * Set the <code>Color</code> this axis will be painted with.
   * </p>
   * 
   * @param color
   *          the <code>Color</code> this trace will be painted with.
   */
  public final void setColor(final Color color) {
    final Color oldValue = this.m_color;
    this.m_color = color;
    if (!this.m_color.equals(oldValue)) {
      this.m_propertyChangeSupport.firePropertyChange(IAxis.PROPERTY_COLOR, oldValue, this.m_color);
    }
  }

最後に、paintAxisYLeft と paintAxisYRight の 2 つのメソッドが変更されました。

追加

g2d.setColor(this.getColor());

行の前に:

g2d.drawLine(xAxisLine, yAxisStart, xAxisLine, yAxisEnd);

そして追加

g2d.setColor(this.getColor());

行の前に:

tickPainter.paintYTick(xAxisLine, tmp, label.isMajorTick(), true, g2d);

これが次のリリースに追加されることを願っています...

于 2015-01-28T13:25:35.293 に答える
0

これは今のところ機能しません。ずっと前に機能要求がありました: http://sourceforge.net/p/jchart2d/feature-requests/51/

自由に投票したり、パッチに貢献したりしてください。

よろしく、アキム

于 2015-01-23T21:58:44.997 に答える