官术网_书友最值得收藏!

Plotting boxplots

Boxplot allows you to compare distributions of values by conveniently showing the median, quartiles, maximum, and minimum of a set of values.

How to do it...

The following script shows a boxplot for 100 random values drawn from a normal distribution:

import numpy as np
import matplotlib.pyplot as plt

data = np.random.randn(100)

plt.boxplot(data)
plt.show()

A boxplot will appear that represents the samples we drew from the random distribution. Since the code uses a randomly generated dataset, the resulting figure will change slightly every time the script is run.

The preceding script will display the following graph:

How to do it...

How it works...

The data = [random.gauss(0., 1.) for i in range(100)] variable generates 100 values drawn from a normal distribution. For demonstration purposes, such values are typically read from a file or computed from other data. The plot.boxplot() function takes a set of values and computes the mean, median, and other statistical quantities on its own. The following points describe the preceding boxplot:

  • The red bar is the median of the distribution.
  • The blue box includes 50 percent of the data from the lower quartile to the upper quartile. Thus, the box is centered on the median of the data.
  • The lower whisker extends to the lowest value within 1.5 IQR from the lower quartile.
  • The upper whisker extends to the highest value within 1.5 IQR from the upper quartile.
  • Values further from the whiskers are shown with a cross marker.

There's more...

To show more than one boxplot in a single graph, calling pyplot.boxplot() once for each boxplot is not going to work. It will simply draw the boxplots over each other, making a messy, unreadable graph. However, we can draw several boxplots with just one single call to pyplot.boxplot() as follows:

import numpy as np
import matplotlib.pyplot as plt

data = np.random.randn(100, 5)

plt.boxplot(data)
plt.show()

The preceding script displays the following graph:

There's more...

The pyplot.boxplot() function accepts a list of lists as the input, rendering a boxplot for each sublist.

主站蜘蛛池模板: 青海省| 潼关县| 调兵山市| 高雄县| 武穴市| 永平县| 肇源县| 黑山县| 茂名市| 济源市| 东安县| 四川省| 甘肃省| 津南区| 花莲市| 延长县| 临沂市| 遂溪县| 中阳县| 桃园市| 重庆市| 稻城县| 雷州市| 安义县| 东丰县| 吉林省| 鹤庆县| 井冈山市| SHOW| 得荣县| 鄂尔多斯市| 荆门市| 永修县| 武汉市| 堆龙德庆县| 太仓市| 汝阳县| 库车县| 武邑县| 绥芬河市| 招远市|