如何翻转 drawRect 以使其向上绘制?

How do I flip the drawRect so that it draws up?

我这里有一些代码,它以指数方式绘制图形,但是它以错误的方式绘制图形。负指数增长。这是我的代码,我正在尝试将其翻转。我会继续努力,但如果你有答案,请告诉我。

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Graphics extends JPanel{   
    public static void main(String[] args) {    
        JFrame f =new JFrame ("Function");
        f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        Graphics g = new Graphics();
        f.add(g);
        f.setSize(700, 700);
        f.setVisible(true); 
}
public void paintComponent (java.awt.Graphics g) {
    super.paintComponent(g);
    int i = this.getWidth()-this.getWidth() + 5;

    int xoffset = this.getWidth()/2;
    int yoffset = this.getHeight()/2;

     for (int x = 0 ; x < 20 ; x++){
         g.setColor(Color.BLACK);
         this.setBackground(Color.WHITE);
         int p = x*x;
         g.fillRect(i+xoffset,10+yoffset,5,p);
         i = i + 10;
      } 
    }
  }

有人知道如何解决这个问题吗?

更改矩形开始绘制的 x/y 位置(它总是绘制 right/down)

所以

g.fillRect(i+xoffset,10+yoffset,5,p);

你可以……

g.fillRect(i + xoffset, 10 + yoffset - p, 5, p);

我不知道你 int i = this.getWidth()-this.getWidth() + 5; 的意图是什么,但显然没有意义 (width - width == 0?)