3.1 定义图表类型----柱状图、线形图和堆积柱状图

3.1 定义图表类型----柱状图、线形图和堆积柱状图

文章目录

  • 3.1 定义图表类型----柱状图、线形图和堆积柱状图
  • 前言
  • 一、线形图
    • 1.操作步骤
    • 2.进一步测试
  • 二、基于相同的数据集合多生成一些常见的图表作比较
    • 1.代码测试
    • 2.结果展示
    • 3.工作原理
  • 三、关于箱线图的一些补充说明
  • 四、总结


前言

虽然我们已经用matplotlib绘制了一些图表,但并没有详细介绍它们是如何进行工作的,或者如何设置的。今天这篇文章我将会和大家分享一下基本类型的数据可视化:包括线形图、柱状图、直方图等等


一、线形图

我们现在Ipython(也就是python的控制台)创建一个简单的图表。python的控制台很友好,它能够让我们交互式地改变图表并且快速看到结果反馈!

1.操作步骤

(1)在PyCharm工具中点击左下角的Python Console
(2)然后导入pylab库:import pylab as plt
(3)执行如下代码:plt.plot([1,2,3,2,3,2,2,1])
(4)之后会打开一个窗口:如下图所示
3.1 定义图表类型----柱状图、线形图和堆积柱状图_第1张图片
(5)由上图我们可以小结一下Matpltlib的基本图表的一些元素:

  • x 轴和 y 轴:水平和垂直的轴线
  • x 轴和 y 轴刻度:刻度标示坐标轴的分隔,包括最小刻度和最大刻度
  • 我们提供给plot()的值是y轴的值;plot()为x轴提供了默认值,上图中就是0~7的线性值

2.进一步测试

(1)我们试着通过plot()的第一个参数添加x轴的值
(2)在控制台中运行如下代码:plt.plot([4,3,2,1],[1,2,3,4])
(3)我们会得到以下图表:
3.1 定义图表类型----柱状图、线形图和堆积柱状图_第2张图片
(3)由上图可知:

  • matplotlib通过扩展y轴来适应新的值范围,并且为了让
    我们能区分出新的图形,自动改变了第二个线条的颜色
  • 如果不关闭hold属性(hold(False)),所有接下来的图表都将绘制在相同的坐标轴下。这是IPython的pylab模式的默认行为,然而在编写常规Python脚本中,hold属性默认是关闭的

二、基于相同的数据集合多生成一些常见的图表作比较

1.代码测试

from matplotlib.pylab import *
#一些简单的数据
x=[1,2,3,4]
y=[5,4,3,2]
#创建新图形
figure()
#将图划分为2 x 3网格
subplot(231)
plot(x,y)
subplot(232)
bar(x,y)
#水平条形图
subplot(233)
barh(x,y)
#创建堆叠条形图
subplot(234)
bar(x,y)
#我们需要更多的堆积条形图数据
y1=[7,8,5,3]
bar(x,y1,bottom=y,color='r')
#方块图
subplot(235)
boxplot(x)
#散点图
subplot(236)
scatter(x,y)
show()

2.结果展示

绘制出来的图表如下图所示:
3.1 定义图表类型----柱状图、线形图和堆积柱状图_第3张图片

3.工作原理

(1)通过调用figure()方法,我们创建出一个新的图表
(2)接下来,调用 subplot(231)方法把图表分割成 2 × 3 的网格。其中第一个参数是行数,第二个参数是列数,第三个参数表示图形的标号
(3)垂直柱状图(bar())
(4)水平柱状图(barh())
(5)对于堆叠柱状图,我们需要把两个柱状图方法调用连在一起。通过设置参数bottom=y,把第二个柱状图和前一个连接起来形成堆叠柱状图。
(6)创建箱线图boxplot()方法
(7)散点图scatter()

三、关于箱线图的一些补充说明

(1)在同一个箱线图中可以呈现5种数据。
(2)如下:

  • 最小值:数据集合的最小值
  • 第二四分位数:其以下为数据集合中较低的 25%数据
  • 中值:数据集合的中值
  • 第三四分位数:其以上为数据集合中较高的 25%数据
  • 最大值:给定数据集合的最大值

(3)下面将用同一个数据集合来绘制箱线图和直方图
代码如下:

from pylab import *

dataset=[113, 115, 119, 121, 124,
         124, 125, 126, 126, 126,
         127, 127, 128, 129, 130,
         130, 131, 132, 133, 136]
subplot(121)
boxplot(dataset,vert=False)

subplot(122)
hist(dataset)

show()

(4)运行测试
3.1 定义图表类型----柱状图、线形图和堆积柱状图_第4张图片

四、总结

展示基本图表以及它们的用途在这里就先告一段落啦!下面的文章将会分享一些基于数学函数绘图以及数学符号相关的一些简单的知识点!

你可能感兴趣的