How to change X location axis for particle system?
There is a rule to give the proper orientation:

The particle object is considered along its Y axis and this is the axis that will give you the Z (say Z for now, but see below) on the mesh the particles are.

So if you want the carrots to be up (Z), you'll need to change them in edit mode so that what will be Z as particles is Y for the carrot mesh.



On the image above, all particles are well oriented, but the monkey that is used as particle object is oriented along Y, with no rotation.

Once you have this rule in mind, you now can play a bit with the particle orientation options:



As shown above, the orientation options are accessible if you check 'advanced' on a hair particle system.

The main option is 'orientation axis' (10 possibilities). Each of them is to indicate in which direction of the emitter the Y axis of the particle will be.

For instance, 'normal' is to say the Y will be along the normal of the emitter faces. 'Global X' is to say Y will be along X world axis, whatever the emitter orientation is. 'Object Z' is to say Y will stay along Z of the emitter even if it is rotated.

I let you experiment about the other options.

Now, as said previously, you need to orientate appropriately you model in edit mode:



In the image above, 


On the left, Suzan oriented as usual: but it's top is along Z
On the right, Suzan rotated in edit mode so that its top is along Y (Y is the axis we want)


Also, the particles will be emitted from the object origin. So eventually, you'll need (still in edit mode) to adjust the geometry to that the origin is placed conveniently to your needs.

Other options that may interest you:




Randomize is to random above the Y axis (so randomly rotating using X or Z axis too)
Phase is to give an initial orientation around the Y axis
Randomize phase is to random around the phase
Scale and scale randomness is to adjust the scale and to give randomness to it (so that all carrots are not exactly the same)