Matplotlib 柱状图
创建柱状图
应用 Pyplot 库, 您可用使用 bar() 函数来创建柱状图(长条图):
实例
绘制 4 个柱状条:
import sysimport matplotlibmatplotlib.use('Agg')import matplotlib.pyplot as pltimport numpy as npx = np.array(["A", "B", "C", "D"])y = np.array([3, 8, 1, 10])plt.bar(x,y)plt.show()plt.savefig(sys.stdout.buffer)sys.stdout.flush()
结果:

bar() 函数接受指定柱形图布局的参数。
由 第一 和 第二 参数表示为数组的类别及其值。
实例
import sysimport matplotlibmatplotlib.use('Agg')import matplotlib.pyplot as pltimport numpy as npx = ["APPLES", "BANANAS"]y = [400, 350]plt.bar(x, y)plt.show()plt.savefig(sys.stdout.buffer)sys.stdout.flush()
水平柱状图
如果希望柱状图水平显示而不是垂直显示,请使用 barh() 函数:
实例
绘制 4 个水平柱状条:
import sysimport matplotlibmatplotlib.use('Agg')import matplotlib.pyplot as pltimport numpy as npx = np.array(["A", "B", "C", "D"])y = np.array([3, 8, 1, 10])plt.barh(x, y)plt.show()plt.savefig(sys.stdout.buffer)sys.stdout.flush()
结果:

柱状条颜色
bar() 和 barh() 可用带入关键字参数 color 来设置柱状条的颜色:
实例
绘制 4 个红色的柱状条:
import sysimport matplotlibmatplotlib.use('Agg')import matplotlib.pyplot as pltimport numpy as npx = np.array(["A", "B", "C", "D"])y = np.array([3, 8, 1, 10])plt.bar(x, y, color = "red")plt.show()plt.savefig(sys.stdout.buffer)sys.stdout.flush()
结果:

颜色名称
您可用使用 140 种支持的颜色名称.
实例
绘制 4 个颜色名称为 "hot pink" 柱状条:
import sysimport matplotlibmatplotlib.use('Agg')import matplotlib.pyplot as pltimport numpy as npx = np.array(["A", "B", "C", "D"])y = np.array([3, 8, 1, 10])plt.bar(x, y, color = "hotpink")plt.show()plt.savefig(sys.stdout.buffer)sys.stdout.flush()
结果:

十六进制颜色
或者您可用使用 十六进制颜色值:
实例
绘制 4 个漂亮的绿色的柱状条:
import sysimport matplotlibmatplotlib.use('Agg')import matplotlib.pyplot as pltimport numpy as npx = np.array(["A", "B", "C", "D"])y = np.array([3, 8, 1, 10])plt.bar(x, y, color = "#4CAF50")plt.show()plt.savefig(sys.stdout.buffer)sys.stdout.flush()
结果:

柱状条宽度
bar() 带入关键字参数 width 来设置柱状条的宽度:
实例
绘制 4 个细的柱状条:
import sysimport matplotlibmatplotlib.use('Agg')import matplotlib.pyplot as pltimport numpy as npx = np.array(["A", "B", "C", "D"])y = np.array([3, 8, 1, 10])plt.bar(x, y, width = 0.1)plt.show()plt.savefig(sys.stdout.buffer)sys.stdout.flush()
结果:

默认宽度值为 0.8
注:对于柱状条,使用高度而不是宽度。
柱状条高度
barh() 带入关键字参数 height 来设置柱状条的高度:
实例
绘制 4 个细的柱状条:
import sysimport matplotlibmatplotlib.use('Agg')import matplotlib.pyplot as pltimport numpy as npx = np.array(["A", "B", "C", "D"])y = np.array([3, 8, 1, 10])plt.barh(x, y, height = 0.1)plt.show()plt.savefig(sys.stdout.buffer)sys.stdout.flush()
结果:

默认高度是 0.8