Animation is change over time. You animate a layer or an effect on a layer by making one or more of its properties change over time. For example, you can animate the Opacity property of a layer from 0% at time zero to 100% at time 1 second to make the layer fade in. Any property with a stopwatch button to the left of its name in the Timeline panel or Effect Controls panel can be animated.

A. Active stopwatch B. Inactive stopwatch
You animate layer properties using keyframes, expressions, or both.
Many animation presets include keyframes and expressions so that you can simply apply the animation preset to the layer to achieve a complex animated result.
You work with keyframes and expressions in After Effects in one of two modes: layer bar mode or Graph Editor mode. Layer bar mode is the default, which shows layers as duration bars, with keyframes and expressions aligned vertically with their properties in the Timeline panel. Graph Editor mode does not show layer bars, and shows keyframes and expression results in value graphs or speed graphs. (See The Graph Editor.)
Keyframes are used to set parameters for motion, effects, audio, and many other properties, usually changing them over time. A keyframe marks the point in time where you specify a value for a layer property, such as spatial position, opacity, or audio volume. Values between keyframes are interpolated. When you use keyframes to create a change over time, you typically use at least two keyframes—one for the state at the beginning of the change, and one for the new state at the end of the change. (See Set or add keyframes.)
When the stopwatch is active for a specific property, After Effects automatically sets or changes a keyframe for the property at the current time whenever you change the property value. When the stopwatch is inactive for a property, the property has no keyframes. If you change the value for a layer property while the stopwatch is inactive, that value remains the same for the duration of the layer.
Opomba:
When Auto-keyframe mode is on, the stopwatch is activated automatically for a property when it’s modified. (See Auto-keyframe mode.)
If you deactivate the stopwatch, all keyframes for that layer property are deleted, and the constant value for the property becomes the value at the current time. Don’t deactivate the stopwatch unless you’re sure that you want to permanently delete all of the keyframes for that property.
Opomba:
Change the keyframe icons in layer bar mode to numbers by choosing Use Keyframe Indices in the Timeline panel menu.

Opomba:
When a layer property that contains keyframes is collapsed, gray dots (summary keyframe indicators) for the property group show that there are keyframes contained within it.
Some tools, such as Motion Sketch and the Puppet tools, automatically set keyframes for you to match motion that you sketch.
Expressions use a scripting language based on JavaScript to specify the values of a property and to relate properties to one another. You can create simple expressions by connecting properties with the pick whip. (See About expressions.)
See the video tutorial, "Animating Transform Properties With Keyframes," by Jeff Sengstack and Infinite Skills.
For a step-by-step tutorial that demonstrates the animation of individual layers from a Photoshop (PSD) file, see the “Animating Layers in After Effects“ chapter of the After Effects Classroom in a Book on the Peachpit Press website.
The Graph Editor represents property values using a two-dimensional graph, with composition time represented horizontally (from left to right). In layer bar mode, on the other hand, the time graph represents only the horizontal time element, without showing a graphical, vertical representation of changing values.
Opomba:
To toggle between layer bar mode and Graph Editor
mode, click the Graph Editor button in
the Timeline panel or press Shift+F3.

Two types of graphs are available in the Graph Editor: value graphs, which show property values; and speed graphs, which show rates of change of property values. For temporal properties, such as Opacity, the Graph Editor defaults to the value graph. For spatial properties, such as Position, the Graph Editor defaults to the speed graph. For information on viewing and editing keyframe values, see View or edit a keyframe value.
In the Graph Editor, each property is represented by its own curve. You can view and work on one property at a time, or you can view multiple properties simultaneously. When more than one property is visible in the Graph Editor, each property’s curve has the same color as the property’s value in the layer outline.
When
you drag a keyframe in the Graph editor with the Snap button selected, the
keyframe snaps to keyframe values, keyframe times, the current time,
In and Out points, markers, the beginning and end of the work area,
and the beginning and end of the composition. When the keyframe
snaps to one of these items, an orange line appears in the Graph
Editor to indicate the object you’re snapping to. Hold Ctrl (Windows)
or Command (Mac OS) after you’ve begun dragging to temporarily toggle
snapping behavior.
Keyframes in Graph Editor mode may have direction handles attached to one or both sides. Direction handles are used to control Bezier interpolation.
You
can use the Separate Dimensions button
at the bottom of the Graph Editor to separate the components of
a Position property into individual properties—X Position, Y Position,
and (for 3D layers) Z Position—so that you can modify or animate
each independently. (See Separate
dimensions of Position to animate components individually.)

Antony Bolante provides information, tips, illustrations about using the Graph Editor in an article on the Peachpit Press website.
Click the Graph Type And Options button at
the bottom of the Graph Editor to select from the following options:
Auto-Select Graph Type
Automatically selects the appropriate graph type for a property: speed graphs for spatial properties (such as Position), and value graphs for other properties.
Show Reference Graph
Displays the unselected graph type in the background for viewing only. (The gray numbers to the right of the Graph Editor indicate the values for the reference graph.)
Show Audio Waveforms
Displays the audio waveform for any layer that has at least one property in the Graph Editor.
Show Layer In/Out Points
Displays In and Out points of all layers that have a property in the Graph Editor. In and Out points appear as curly braces.
Show Layer Markers
Displays layer markers in the Graph Editor, if they exist, for any layer that has at least one property in the Graph Editor. Layer markers appear as small triangles.
Allow Keyframes Between Frames
Allows placement of keyframes between frames for fine-tuning animation.
Opomba:
To activate the Hand tool momentarily when using another tool, press and hold the spacebar or the middle mouse button.
- To pan vertically, roll the mouse scroll wheel.
- To pan horizontally, press the Shift key as you roll the mouse scroll wheel.
- To zoom in, click with the Zoom tool.
- To zoom out, Alt-click (Windows) or Option-click (Mac OS) with the Zoom tool.
- To zoom using the mouse scroll wheel, press Alt (Windows) or Option (Mac OS) while scrolling to zoom horizontally. Press Ctrl (Windows) or Command (Mac OS) to zoom vertically.
- To zoom horizontally, Alt-drag (Windows) or Option-drag (Mac OS) to the left with the Zoom tool to zoom out or to the right to zoom in.
- To zoom vertically, Alt-drag (Windows) or Option-drag (Mac OS) up with the Zoom tool to zoom in or down to zoom out.
Opomba:
You cannot pan or zoom vertically when Auto Zoom Height is selected.
Auto Zoom Height
Toggles Auto Zoom Height mode, which automatically scales the height of the graph so that it fits the height of the Graph Editor. The horizontal zoom must still be adjusted manually.