I am trying to output data to a 20x4 lcd using a 3 axis accelerometer and pro micro. All I can get is the first digit of each axis to display. Can someone take a look at the sketch and tell me what I may have wrong?

Code:
/*
ADXL3xx
Reads an Analog Devices ADXL3xx accelerometer and communicates the
acceleration to the computer. The pins used are designed to be easily
compatible with the breakout boards from Sparkfun, available from:
http://www.sparkfun.com/commerce/categories.php?c=80
http://www.arduino.cc/en/Tutorial/ADXL3xx
The circuit:
analog 0: accelerometer self test
analog 1: z-axis
analog 2: y-axis
analog 3: x-axis
analog 4: ground
analog 5: vcc
created 2 Jul 2008
by David A. Mellis
modified 30 Aug 2011
by Tom Igoe
This example code is in the public domain.
*/
#include <LiquidCrystal_I2C.h>
#include <Wire.h>
LiquidCrystal_I2C lcd(0x27, 20, 4);
// these constants describe the pins. They won't change:
const int groundpin = 18; // analog input pin 4 -- ground
const int powerpin = 19; // analog input pin 5 -- voltage
const int xpin = A3; // x-axis of the accelerometer
const int ypin = A2; // y-axis
const int zpin = A1; // z-axis (only on 3-axis models)
void setup() {
// initialize the serial communications:
Serial.begin(9600);
lcd.begin();
lcd.backlight();
// Provide ground and power by using the analog inputs as normal
// digital pins. This makes it possible to directly connect the
// breakout board to the Arduino. If you use the normal 5V and
// GND pins on the Arduino, you can remove these lines.
//pinMode(groundpin, OUTPUT);
//pinMode(powerpin, OUTPUT);
//digitalWrite(groundpin, LOW);
//digitalWrite(powerpin, HIGH);
}
void loop() {
//Print the value of the x pin to the first line of the lcd
lcd.setCursor(0,0); //set the cursor to the first line
lcd.print(" X= "); //display 'X=' followed by
lcd.print(analogRead(xpin)); //the value of the xpin data
// Print the value of the y pin to the second line of the lcd
lcd.setCursor(0,1); //set the cursor to the second line
lcd.print(" Y= "); //display 'Y=' followed by
lcd.print(analogRead(ypin)); //the value of the xpin data
// Print the value of the z pin to the third line of the lcd
lcd.setCursor(0,2); //set the cursor to the third line
lcd.print(" z= "); //display 'Z=' followed by
lcd.print(analogRead(zpin)); //the value of the xpin data
// print the sensor values to the serial monitor:
Serial.print(analogRead(xpin));
// print a tab between values:
Serial.print("\t");
Serial.print(analogRead(ypin));
// print a tab between values:
Serial.print("\t");
Serial.print(analogRead(zpin));
Serial.println();
// delay before next reading:
delay(100);
}
