- See Also
-
Related Guides
- Date & Time Visualization
- Financial & Economic Data
- Data Visualization
- Time Series Processing
- Date & Time
- Using the Wolfram Data Drop
- Financial Visualization
- Tabular Visualization
- Weather Data
- Scientific Data Analysis
- Statistical Visualization
- Charting and Information Visualization
- Signal Visualization & Analysis
- Socioeconomic & Demographic Data
- Financial Computation
- Numbers with Uncertainty
- Tabular Communication
-
- See Also
-
Related Guides
- Date & Time Visualization
- Financial & Economic Data
- Data Visualization
- Time Series Processing
- Date & Time
- Using the Wolfram Data Drop
- Financial Visualization
- Tabular Visualization
- Weather Data
- Scientific Data Analysis
- Statistical Visualization
- Charting and Information Visualization
- Signal Visualization & Analysis
- Socioeconomic & Demographic Data
- Financial Computation
- Numbers with Uncertainty
- Tabular Communication
DateListPlot [{{date1,y1},{date2,y2},…,{daten,yn}}]
plots points with values yi at a sequence of dates.
DateListPlot [{y1,y2,…,yn},datespec]
plots points with dates at equal intervals specified by datespec.
DateListPlot [tseries]
plots the time series tseries.
DateListPlot [{data1,data2,…}]
plots data from all the datai.
DateListPlot [{…,w[datai],…}]
plots datai with features defined by the symbolic wrapper w.
DateListPlot
DateListPlot [{{date1,y1},{date2,y2},…,{daten,yn}}]
plots points with values yi at a sequence of dates.
DateListPlot [{y1,y2,…,yn},datespec]
plots points with dates at equal intervals specified by datespec.
DateListPlot [tseries]
plots the time series tseries.
DateListPlot [{data1,data2,…}]
plots data from all the datai.
DateListPlot [{…,w[datai],…}]
plots datai with features defined by the symbolic wrapper w.
Details and Options
- DateListPlot is also known as a time series plot or chronological plot.
- Regular data {y1,…,yn} is plotted as a functional curve through the points {datei,yi}, with the datei evenly spaced between the starting and ending dates from datespec.
- Irregular data {{date1,y1},…,{daten,yn}} is plotted as the ordered curve through the points {datei,yi} in chronological order.
- Possible forms of datei include:
-
"string" DateString specification{y},{y,m},{y,m,d},… shortened date listt absolute time given as a single number
- In shortened date lists, omitted elements are taken to have default values {y,1,1,0,0,0}.
- Possible forms of datespec include:
-
{start,end} dates from start to end in equal incrementsstart dates with increments determined by the form of start
- The Δt in datespec can be a {y,m,d,h,m,s} date list specification or any of the special forms "Year", "Quarter", "Month", "Week", "Day", "Hour", "Minute", "Second", and "Millisecond".
- If no explicit Δt is given, the increments used will be the smallest time unit specified explicitly in start.
- Data values yi can be given in the following forms:
-
yi a real-valued number
- Values yi that are not of the preceding form are taken to be missing and are not shown.
- The datai have the following forms and interpretations:
-
<|"k1"y1,"k2"y2,…|> values {y1,y2,…}<|date1y1,date2y2,…|> key-value pairs {{date1,y1},{date2,y2},…}QuantityArray magnitudesWeightedData unweighted values
- DateListPlot [Tabular […]cspec] extracts and plots values from the tabular object using the column specification cspec.
- The following forms of column specifications cspec are allowed for plotting tabular data:
-
{colx,coly} plot column y against column x{{colx1,coly1},{colx2,coly2},…} plot column y1 against column x1, y2 against x2, …coly, {coly} plot column y as a sequence of values{{coly1},…,{colyi},…} plot columns y1, y2, … as sequences of values
- The colx can also be Automatic , in which case, sequential values are generated using DataRange .
- The following wrappers w can be used for the datai:
-
- Wrappers w can be applied at multiple levels:
-
{…,w[yi],…} wrap the value yi in a list{…,w[{datei,yi}],…} wrap the point {datei,yi}w[datai] wrap the data dataiw[{data1,…}] wrap a collection of dataw1[w2[…]] use nested wrappers
- In DateListPlot , Labeled and Placed allow the following positions:
-
Above position above curveBelow position below curveBefore position before curveAfter position after curveStart position at start of each curveEnd position at end of each curvex near the curve at a position x{pos,epos} epos in label placed at relative position pos of the curve
- DateListPlot has the same options as Graphics , with the following additions and changes: [List of all options]
-
- DataRange determines how values {y1,…,yn} are interpreted into {{date1,y1},…,{xn,yn}}. Possible settings include:
-
{xmin,xmax} uniform from xmin to xmax
- In general, a list of pairs {{x1,y1},{x2,y2},…} is interpreted as a list of points, but the setting DataRange All forces it to be interpreted as multiple data {{y11,y12},{y21,y23},…}.
- Possible settings for PlotLayout that show multiple curves in a single plot panel include:
-
"Overlaid" show all the data overlapping"Stacked" accumulate the data"Percentile" accumulate and normalize the data
- Possible settings for PlotLayout that show single curves in multiple plot panels include:
-
"Column" use separate curves in a column of panels"Row" use separate curves in a row of panels{"Column",k},{"Row",k} use k columns or rows
- Typical settings for PlotLegends include:
-
None no legendAutomatic automatically determine legend{lbl1,lbl2,…} use lbl1, lbl2, … as legend labels
- ColorData ["DefaultPlotColors"] gives the default sequence of colors used by PlotStyle .
- ScalingFunctions->"scale" scales the coordinate; ScalingFunctions {"scalex","scaley"} scales both the and coordinates.
- All explicit coordinates in Prolog , Epilog , Ticks , etc. are taken to be dates.
- Possible highlighting effects for Highlighted and PlotHighlighting include:
-
style highlight the indicated data"Ball" highlight and label the indicated point in data"Dropline" highlight and label the indicated point in data with droplines to the axes"XSlice" highlight and label all points along a vertical slice"YSlice" highlight and label all points along a horizontal slice
- Highlight position specifications pos include:
-
x, {x} effect at {x,y} with y chosen automatically{x,y} effect at {x,y}{pos1,pos2,…} multiple positions posi
- Highlight options with settings specific to DateListPlot
-
ImageMargins 0. the margins to leave around the graphicPlotLayout "Overlaid" how to position dataPreserveImageOptions Automatic whether to preserve image options when displaying new versions of the same graphic
List of all options
Examples
open all close allBasic Examples (5)
Plot data with explicit date values:
Plot monthly values, starting in August 2000:
Plot multiple time series with a legend:
Add labels for the data:
Retrieve and plot a historical stock price:
Scope (49)
Data (9)
Plot a time series of temperatures:
Dates given as AbsoluteTime specifications:
Dates given as DateString specifications:
Dates given as elided DateList specifications:
Plot a series of data using an initial starting date or time:
Plot data spaced equally in time between a starting and ending date:
Plot data gathered every 90 days, starting on January 1, 2006:
Plot data gathered on the 15^(th) day of each month, starting in January:
Dates determined by an ending date and a step:
Use ScalingFunctions to scale the axes:
Special Data (5)
Use Quantity to include units with the data:
Plot data in a QuantityArray :
Specify the units used with TargetUnits :
Plot TimeSeries directly:
Numeric values in an Association are used as the coordinates:
Numeric keys and values in an Association are used as the and coordinates:
Plot data with uncertainty:
Use intervals:
Tabular Data (1)
Get tabular data for historical populations of several countries:
Plot the population of France from 1940 to 2020:
Plot the populations of France, Germany and Australia:
Include legends for the plot, using the column names:
Wrappers (8)
Use wrappers on individual data, datasets, or collections of datasets:
Wrappers can be nested:
Use the value of each point as a tooltip:
Use a specific label for all the points:
Use PopupWindow to provide additional drilldown information:
Button can be used to trigger any action:
Use Annotation for dynamic action when the mouse enters the plot:
Use Hyperlink to jump to the specified link when clicked:
Use StatusArea to display a string in the status area of the current notebook:
Labeling and Legending (17)
Label data with Labeled :
Label points with automatically positioned text:
Place the labels relative to the points:
Label data with PlotLabels :
Place the label near the points at a date:
Use a scaled position:
Specify the text position relative to the point:
Include legends for each curve:
Use callouts to label curves:
Place a callout at a named location:
Place a callout at a specific location:
Specify the maximum size of labels:
Use the full label:
For dense sets of points, some labels may be turned into tooltips by default:
Increasing the size of the plot will show more labels:
Use Legended to provide a legend for a specific dataset:
Use Placed to change the legend location:
Use Association keys as labels:
Plots usually have interactive callouts showing the coordinates when you mouse over them:
Including specific wrappers or interactions, such as tooltips, turns off the interactive features:
Choose from multiple interactive highlighting effects:
Use Highlighted to emphasize specific points in a plot:
Use Highlighted […,None ] to disable highlighting for a single dataset:
Presentation (9)
Multiple curves are automatically colored to be distinct:
Provide explicit styling to different curves:
Include legends for each dataset:
Use Legended to provide a legend for a specific dataset:
Use a theme with detailed ticks and grid lines:
Use a more stylized theme:
Create filled plots:
Fill between the curves:
Use shapes to distinguish different datasets:
Plot the data in a stacked layout:
Plot the data as percentiles of the total of the values:
Show multiple curves in a row of separate panels:
Use a column instead of a row:
Use multiple rows or columns:
Options (128)
AspectRatio (3)
By default, DateListPlot uses a fixed height to width ratio for the plot:
Use AspectRatio 1 to make the height the same as the width:
AspectRatio Full adjusts the height and width to tightly fit inside other constructs:
Axes (1)
By default, DateListPlot uses a frame instead of axes:
Use axes instead of a frame:
Turn each axis on individually:
AxesLabel (4)
No axes labels are drawn by default:
Place a label on the axis:
Specify axes labels:
Use units as labels:
AxesOrigin (2)
The position of the axes is determined automatically:
Specify an explicit origin for the axes:
AxesStyle (1)
Change the style for the axes:
Specify the style of each axis:
Use different styles for the ticks and the axes:
Use different styles for the labels and the axes:
DateFunction (2)
Prepend a year to create dates from {month,day} lists:
Define functions for interpreting ambiguous date strings:
DateTicksFormat (1)
Specify the format of date ticks as DateString elements:
Epilog (1)
Place text using a shortened DateList as the coordinate:
Filling (1)
Fill from data points to the bottom:
Fill to the bottom with points joined:
Frame (4)
DateListPlot uses a frame by default:
Use Frame False to turn off the frame:
Draw a frame on the left and right edges:
Draw a frame on the left and bottom edges:
FrameLabel (4)
Place a label along the bottom frame of a plot:
Frame labels are placed on the bottom and left frame edges by default:
Place labels on each of the edges in the frame:
Use a customized style for both labels and frame tick labels:
FrameStyle (2)
Specify the style of the frame:
Specify style for each frame edge:
FrameTicks (10)
Frame ticks are placed automatically by default:
Use a frame with no ticks:
Use different date specifications:
Use frame ticks on the bottom edge:
By default, the top and right edges have tick marks but no tick labels:
Use All to include tick labels on all edges:
Place tick marks at specific positions:
Draw frame tick marks at the specified positions with specific labels:
Specify the lengths for tick marks as a fraction of the graphics size:
Use different sizes in the positive and negative directions for each tick mark:
Specify a style for each frame tick:
Construct a function that places frame ticks at the midpoint and extremes of the frame edge:
FrameTicksStyle (3)
By default, the frame ticks and frame tick labels use the same styles as the frame:
Specify an overall style for the ticks, including the labels:
Use different styles for the different frame edges:
GridLines (1)
Include grid lines at specific dates:
Make the first grid line Blue :
ImageSize (7)
Use named sizes such as Tiny , Small , Medium and Large :
Specify the width of the plot:
Specify the height of the plot:
Allow the width and height to be up to a certain size:
Specify the width and height for a graphic, padding with space if necessary:
Setting AspectRatio Full will fill the available space:
Use maximum sizes for the width and height:
Use ImageSize Full to fill the available space in an object:
Specify the image size as a fraction of the available space:
IntervalMarkers (3)
By default, uncertainties are capped:
Use bars to denote uncertainties without caps:
Use bands to represent uncertainties:
IntervalMarkersStyle (2)
Uncertainties automatically inherit the plot style:
Specify the style for uncertainties:
Joined (2)
Plot data with points joined by a line:
Plot multiple datasets with points joined:
Only join points for the first dataset:
LabelingFunction (3)
By default, points are automatically labeled with strings:
Use LabelingFunction->None to suppress the labels:
Put the labels above the points:
Put them in a tooltip:
LabelingSize (4)
Textual labels are shown at their actual sizes:
Image labels are automatically resized:
Specify a maximum size for textual labels:
Specify a maximum size for image labels:
Show image labels at their natural sizes:
LabelingTarget (6)
Labels are automatically placed to maximize readability:
Show all labels:
Use a denser layout for the labels:
Show the half of the labels that are easiest to read:
Only allow labels that are orthogonal to the points:
Only allow labels that are diagonal to the points:
Allow labels to be clipped by the edges of the plot:
PlotFit (4)
Automatically fit a model to the data:
Fit a straight line to the data:
Fit a quadratic curve to the data:
Use KernelModelFit to approximate the data:
PlotFitElements (4)
By default, only the fitted model is shown:
Include the original data points with the fitted curve:
Plot confidence bands for the data, with a default confidence level of 0.95:
Use a confidence level of 0.5 for the bands:
Show residual lines from the data points to the fitted curve:
Combine the original points with gray residual lines:
PlotHighlighting (9)
Plots have interactive coordinate callouts with the default setting PlotHighlighting Automatic :
Use PlotHighlighting None to disable the highlighting for the entire plot:
Move the mouse over a set of points to highlight it using arbitrary graphics directives:
Move the mouse over the points to highlight them with balls and labels:
Move the mouse over the curve to highlight it with a label and drop lines to the axes:
Use a ball and label to highlight a specific point in the plot:
Move the mouse over the plot to highlight it with a slice showing values corresponding to the position:
Highlight a particular set of points at a fixed value:
Move the mouse over the plot to highlight it with a slice showing values corresponding to the position:
Highlight the curves at a fixed value:
Use a component that shows the points on the plot closest to the position of the mouse cursor:
Specify the style for the points:
Use a component that shows the coordinates on the points closest to the mouse cursor:
Use Callout options to change the appearance of the label:
Combine components to create a custom effect:
PlotInteractivity (3)
Plots have interactive highlighting by default:
Turn off all the interactive elements:
Allow provided interactive elements and disable automatic ones:
PlotLabel (1)
Add an overall label to the plot:
PlotLabels (4)
Specify text to label curves:
Place the label above the data:
Place the label below the data at a specific date:
Use a callout to label the curve:
PlotLabel Automatic uses keys of an Association as data labels:
Use None to not add a label:
PlotLayout (4)
By default, curves are overlaid on each other:
Plot the data in a stacked layout:
Plot the data as percentiles of the total of the values:
Place each curve in a separate panel using shared axes:
Use a row instead of a column:
Label the individual panels:
Use multiple columns or rows:
PlotLegends (6)
PlotLegends matches up styles in the plot:
PlotLegends matches up markers in the plot:
Use a list of legend labels:
Use MetaInformation from a TimeSeries :
See the available MetaInformation :
The metal list can be extracted directly:
Visualize the data:
Use Placed to specify legend placement:
Use PointLegend to change legend appearance:
PlotRange (1)
Restrict the range of dates over which to plot:
PlotTheme (2)
Use a theme with a dark background in a high-contrast color scheme:
Change the color scheme:
Prolog (1)
Place text using a shortened DateList as the coordinate:
ScalingFunctions (7)
By default, plots have linear scales in each direction:
Use a log scale in the direction:
Use a linear scale in the direction that shows smaller numbers at the top:
Use a reciprocal scale in the direction:
Use a scale defined by a function and its inverse:
Positions in FrameTicks and GridLines are automatically scaled:
PlotRange is automatically scaled:
TargetUnits (1)
Units are automatically extracted from the data:
Specify the units to use:
Ticks (10)
Ticks are placed automatically in each plot:
Use Ticks None to draw axes without any tick marks:
Use ticks on the date axis, but not the axis:
Place tick marks at specific positions:
Give explicit dates as date strings or absolute times:
Draw tick marks at the specified positions with the specified labels:
Use specific ticks on one axis and automatic ticks on the other:
Specify the lengths for tick marks as a fraction of the graphics size:
Use different sizes in the positive and negative directions for each tick:
Specify a style for each tick:
Construct a function that places ticks at the midpoint and extremes of the numerical axis:
TicksStyle (4)
By default, the ticks and tick labels use the same styles as the axis:
Specify an overall ticks style, including the tick labels:
Specify ticks style for each of the axes:
Use a different style for the tick labels and tick marks:
Applications (2)
Get stock price data:
Plot data gathered at regular intervals and stored without explicit dates:
Modify the ticks:
Properties & Relations (2)
Date coordinates are plotted as absolute times:
A ListPlot using the AbsoluteTime values:
DateListLogPlot plots date‐based data on a logarithmic scale:
See Also
DateListLogPlot StackedDateListPlot DateListStepPlot ListPlot TimelinePlot DateHistogram DateString DateList CandlestickChart TradingChart Databin
Function Repository: DateListPlotRanged
Related Guides
-
▪
- Date & Time Visualization ▪
- Financial & Economic Data ▪
- Data Visualization ▪
- Time Series Processing ▪
- Date & Time ▪
- Using the Wolfram Data Drop ▪
- Financial Visualization ▪
- Tabular Visualization ▪
- Weather Data ▪
- Scientific Data Analysis ▪
- Statistical Visualization ▪
- Charting and Information Visualization ▪
- Signal Visualization & Analysis ▪
- Socioeconomic & Demographic Data ▪
- Financial Computation ▪
- Numbers with Uncertainty ▪
- Tabular Communication
History
Introduced in 2007 (6.0) | Updated in 2008 (7.0) ▪ 2012 (9.0) ▪ 2014 (10.0) ▪ 2016 (10.4) ▪ 2016 (11.0) ▪ 2018 (11.3) ▪ 2019 (12.0) ▪ 2021 (13.0) ▪ 2023 (13.3) ▪ 2025 (14.2) ▪ 2025 (14.3)
Text
Wolfram Research (2007), DateListPlot, Wolfram Language function, https://reference.wolfram.com/language/ref/DateListPlot.html (updated 2025).
CMS
Wolfram Language. 2007. "DateListPlot." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2025. https://reference.wolfram.com/language/ref/DateListPlot.html.
APA
Wolfram Language. (2007). DateListPlot. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/DateListPlot.html
BibTeX
@misc{reference.wolfram_2025_datelistplot, author="Wolfram Research", title="{DateListPlot}", year="2025", howpublished="\url{https://reference.wolfram.com/language/ref/DateListPlot.html}", note=[Accessed: 17-November-2025]}
BibLaTeX
@online{reference.wolfram_2025_datelistplot, organization={Wolfram Research}, title={DateListPlot}, year={2025}, url={https://reference.wolfram.com/language/ref/DateListPlot.html}, note=[Accessed: 17-November-2025]}