The cable is the likely problem. If it gets kinked/worn it tends to bind/release over & over again making the needle jump around. You can try undoing one end of the cable (usually at the tach end), sliding out the inner cable, cleaning it and re-greasing it. Dribble a few drops of oil into the outer sheath and slide the inner cable back in place. If you are lucky that might fix it. But if you see broken strands or a kink in the inner cable replace the whole thing.