Plotting the Trivial and Critical Zeros of the Riemann Zeta Function

The Riemann zeta function, denoted , is a function of the complex variable where for , with analytically continued to all complex arguments except for a single pole at . There are two kinds of zeros of , trivial and critical. Because a full plot of would require four dimensions (a real and imaginary pair of axes for the domain and another such pair for the range), either one or two axes are often omitted from plots to focus on particular aspects of the function. This Demonstration plots in five different ways with several choices of axes to illustrate the location of the trivial and critical zero points in relation to the axes, to each other and to the overall shape of the function. A set of 15 controls allows you to vary aspects of all five plots of the zero points while also displaying a table of their coordinates to the right of each plot.


  • [Snapshot]
  • [Snapshot]
  • [Snapshot]
  • [Snapshot]


The zeta function, denoted , is a function of the complex variable , where and . It was first introduced and studied early in the eighteenth century by Leonhard Euler [1], who computed it for some positive and negative integer values of [2]. Later work by Pafnuty Chebyshev extended the function's domain to all [2]. Bernhard Riemann [3] further extended by analytic continuation to all complex values, including , and today is generally referred to as the Riemann zeta function [2–6].
This Demonstration can plot the first 24 trivial and critical zeros of in five different ways. They are chosen from the "plot" popup menu as described in the paragraphs below. Not all of the 15 controls apply to every plot choice.
The dragging options and the blue "restore initial 3D view" setter control apply only to the 3D graphics that are seen in plots 3, 4 and 5. You can rotate any 3D plot by dragging on it. To translate (slide-move) the plot, Shift+drag on it. To zoom in or out use Alt+drag (in Windows) or Option+drag or Command+drag (in macOS). To zoom in, drag bottom to top; to zoom out, drag top to bottom. To cancel the effects of any dragging, click the blue setter, which returns the 3D plot to the original viewpoint.
Select plot option "1: trivial zeros 2D plot" to display trivial zeros on the 2D axes versus . The " axis minimum" slider sets the minimum value of the axis. It also varies the number (from 0 to 24) of trivial zeros plotted as pink points at even negative integer values on the gray axis. The dashed brown line at passes through the brown pole point at , which is the only place in the complex domain where diverges and is undefined.
When the "plot regularization point" box is checked, the point is plotted in magenta on the negative side of the blue curve. The point seems to imply a surprising and counterintuitive equality, because substituting in the infinite series sum that defines reveals the following:
which seems to imply that [7]. However, setting the left side of the above equation equal to is an abuse of notation. Mathematica's notation makes the difference explicit. Evaluating Sum[n,{n,1,∞}] in Mathematica returns a "Sum: Sum does not converge." error, as you would expect. Evaluating Sum[n,{n,1,∞},Regularization->"Dirichlet"] returns , making it clear that the two sums are not the same. However, the expression Zeta[-1]==Sum[n,{n,1,∞},Regularization->"Dirichlet"]==-1/12 evaluates to True, showing that the value of is indeed equivalent to the regularized infinite sum of the positive integers. The value of is in the analytically continued part of the complex domain of , but because , this regularized sum involves only real numbers.
The regularized sum is elsewhere referred to as "zeta function regularization" [7], but in Mathematica it is referenced with the option Regularization->"Dirichlet", partly because the infinite series that defines is one example of the more general Dirichlet series , where is complex and the complex sequence [8], but also because the first three Regularization options to Mathematica's Sum and Product functions are Abel, Borel and Cesaro, someone wanted the fourth option to be a word beginning with "D", and "Riemann" and "Zeta" did not qualify [9]. The regularized product of the infinite series of positive integers can also be computed using that same option. Product[n,{n,1,Infinity}] returns the expected error message "Product: Product does not converge.", but Product[n,{n,1,Infinity},Regularization->"Dirichlet"] returns .
Select plot option "2: critical zeros 2D plot" to display the real and imaginary parts of versus as green and brown curves, respectively. The critical zeros are shown as red points lying on the black axis, which represents the domain line , known as the critical line. Notice the characteristic periodicities of the two curves.
Select plot option "3: 2D view of critical zeros 3D plot" to display on the axes , and as viewed looking down the axis toward the origin. Because the axis is orthogonal to the screen, all the red critical zero points appear as a single point at the plot's origin [10, 11]. To see the points lying on the black critical line, click and drag on the image to rotate it in 3D or choose plot option 4.
Select plot option "4: critical zeros 3D plot" to display critical zeros on the same 3D axes as the plot 3 choice, but from a different viewpoint that allows you to see the curve in three dimensions without needing to rotate the plot. You can still drag and rotate the 3D viewpoint of plot 4 to match that of plot 3 and vice versa.
Select plot option "5: trivial and critical zeros 4D plot on 3D axes" to display both trivial and critical zero points on a 4D plot of . The three axes are modulus (magnitude) of , , and . The fourth dimension is (phase angle of ) plotted as a cyclic color function on the 3D surface of . The surface appears totally opaque at opacity 1. The trivial (pink) and critical (red) points and lines on which they lie become more visible through the colored ζ surface as the opacity value is set closer to 0 and the surface becomes invisible at opacity 0. Setting the "number of critical zero pairs to plot" slider to 0 will remove the title and critical zeros coordinates and all trivial and critical zero points from the plot but will retain the plot range of all three axes that was used at the previous setting of . With the "speed up plot 5" box unchecked the plot takes longer to compute but the pole peak at becomes much more prominent, as seen in Snapshot 4.
The famous Riemann hypothesis of 1859 [4] asserts that all non-trivial zeros of lie on the critical line. Over 10 trillion () critical zeros of have been shown to conform [12]. However, the hypothesis itself remains unproven and proving it could win the proof's author a $1,000,000 Millennium Prize from the Clay Mathematics Institute [12]. A short and well-written recent book explains that the Riemann hypothesis implies that the position of the primes in the sequence of natural numbers is encoded in the imaginary parts of the non-trivial zeros along the critical line. [13]
Snapshot 1: Plot option 2 shows the first 12 critical zeros of as red points on both the positive and negative sides of the axis. The versus curve is green and the versus curve is brown.
Snapshot 2: Plot option 3 shows a 2D view of the first 24 positive critical zeros of plotted on 3D axes , and . The curve is the thin blue line.
Snapshot 3: Plot option 4 shows six positive and six negative critical zeros of plotted on 3D axes , and . The curve is the medium blue line; the critical line is the axis plotted as thin and black on which the critical zeros appear as large red points.
Snapshot 4: Plot option 5 shows a 4D plot of a single trivial zero, a single positive, and a single negative critical zero of plotted on 3D axes, , and where the color contours plot as a fourth dimension. The " surface opacity" slider is set to 1. The critical line is plotted as thick and black and the axis line as thick and gray. The critical zero points are plotted as large and red and the trivial zero points as large and pink. The legend for is plotted as a column to the right of the plot. The "speed up plot 5" box is unchecked so the pole peak at is clearly visible, though the plot takes longer to complete.
[1] Wikipedia. "Leonhard Euler." (Nov 24, 2021)
[2] Wikipedia. "Riemann Zeta Function." (Nov 24, 2021)
[3] Wikipedia. "Bernhard Riemann." (Nov 24, 2021)
[4] E. W. Weisstein. "Riemann Zeta Function" from Wolfram MathWorld—A Wolfram Web Resource.
[5] B. Riemann, "On the Number of Prime Numbers Less than a Given Quantity," Monatsberichte der Berliner Akademie, 1859. English translation by D. R. Wilkins, 1998. (Nov 24, 2021)
[6] Wikipedia. "On the Number of Primes Less than a Given Magnitude." (Nov 24, 2021)
[7] Wikipedia. "1 + 2 + 3 + 4 +…" (Nov 24, 2021)
[8] Wikipedia. "Dirichlet Series." (Nov 24, 2021)
[9] D. Kapadia. "The ABCD of Divergent Series" from Wolfram Blog—A Wolfram Web Resource. (Aug 6, 2014)
[10] A. Kontorovitch, "How I Learned to Love and Fear the Riemann Hypothesis," Quanta Magazine, Jan 4, 2021.
[11] C. Shonkwiler. "Riemann Hypothesis Video from Quanta Magazine" from Wolfram Community—A Wolfram Web Resource. (Nov 24, 2021)
[12] "Riemann Hypothesis." Clay Mathematics Institute. (Nov 24, 2021)
[13] B. Mazur and W. Stein, Prime Numbers and the Riemann Hypothesis, Cambridge: Cambridge University Press, 2016.
    • Share:

Embed Interactive Demonstration New!

Just copy and paste this snippet of JavaScript code into your website or blog to put the live Demonstration on your site. More details »

Files require Wolfram CDF Player or Mathematica.