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

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.

主站蜘蛛池模板: 东宁县| 遂平县| 区。| 孟津县| 宜良县| 井陉县| 廉江市| 寿宁县| 闸北区| 辽阳市| 芷江| 南充市| 吉安县| 中宁县| 靖宇县| 福海县| 临湘市| 五家渠市| 察雅县| 固始县| 抚宁县| 买车| 雅安市| 浙江省| 东兰县| 手机| 鄂托克前旗| 库尔勒市| 滨海县| 筠连县| 神木县| 阿克苏市| 宜兰县| 延边| 教育| 禄丰县| 徐州市| 新兴县| 登封市| 娄底市| 莱芜市|