📜  使用 Chartify 进行数据可视化

📅  最后修改于: 2022-05-13 01:54:40.305000             🧑  作者: Mango

使用 Chartify 进行数据可视化

Chartify 是来自 Spotify 的开源数据可视化库,它使数据分析师可以轻松创建图表和图形。 Chartify 建立在 Bokeh 之上,Bokeh 是一个非常流行的数据可视化库。本文简要介绍了这项技术。

需要的模块

安装最新版本的 Chartify 和 Pandas。要安装这些模块,请在终端中键入以下命令。

pip install chartify
pip install pandas

在这种情况下,数据清理和操作需要 Pandas。因此,让我们将这些导入到我们的Python代码中。建议使用 Jupyter notebook 或 Google Colab 进行任何类型的数据可视化或分析。

Python3
import chartify
import pandas as pd


Python3
ch = chartify.Chart()
ch.show()


Python3
data = chartify.examples.example_data()
data.head()


Python3
ch = chartify.Chart(x_axis_type='datetime')


Python3
ch.set_title("Quantity Fruit vs Date")
ch.set_subtitle("Quantity of fruits grown all around the world")
  
ch.axes.set_xaxis_label("Date")
ch.axes.set_yaxis_label("Quantity")
ch.set_source_label("Source:Chartify Examples")


Python3
ch.plot.scatter(data_frame=data, x_column='date',
                y_column='quantity', 
                color_column='fruit')
ch.show()


Python3
ch = chartify.Chart(y_axis_type='density')


Python3
ch.set_title("Quantity vs Count")
ch.axes.set_xaxis_label("Quantity")
ch.axes.set_yaxis_label("Count")
ch.set_source_label("Source:Chartify Examples")


Python3
ch.plot.histogram(data_frame=data, values_column='quantity')
ch.show()


Chartify 使任何人都可以轻松启动。以下代码有助于设置一个简单的图表并将其显示在笔记本中。

Python3

ch = chartify.Chart()
ch.show()

输出:

但是,这只是一个没有数据的空图表。让我们试着用数据填充这个图表,看看这个可视化工具变得活跃起来。 Chartify 带有自己的数据集示例,您可以从中学习。因此,我们将加载示例数据并显示它。

Python3

data = chartify.examples.example_data()
data.head()

数据头()

如果我们分析这个数据集,我们可以得出它是时间序列数据的结论。按照惯例,时间(或日期)显示在 X 轴上。因此,让我们将 X 轴的类型设置为 DateTime

Python3

ch = chartify.Chart(x_axis_type='datetime')

现在,您可以使用此工具绘制各种绘图。但是,在本文中,我们将只使用两个,即散点图和直方图。

首先,让我们构建一个散点图。最简单的方法是使用scatter方法。应该传递的参数是具有要绘制的数据的data_frame ,指定 X 轴的x_column和指定 Y 轴的y_column 。所有其他参数都是可选的(即,在未指定时为它们分配默认值)。 color_column参数为指定列的基图着色。假设在上面的数据集中,我们将color_column设置为“fruit”列。 Chartify 为列中的不同水果名称分配不同的颜色。 color_column参数中的值列表用于对颜色进行特定排序。 alpha是绘图的透明度(alpha 值)。这里 1.0 是完全不透明的,而 0.0 是完全透明的。标记是指绘图上的值标记。标记可以是圆形、星号、菱形、三角形和各种其他形状。

现在让我们为图表设置标题、副标题和其他属性。

Python3

ch.set_title("Quantity Fruit vs Date")
ch.set_subtitle("Quantity of fruits grown all around the world")
  
ch.axes.set_xaxis_label("Date")
ch.axes.set_yaxis_label("Quantity")
ch.set_source_label("Source:Chartify Examples")

现在让我们使用以下内容制作散点图并将其显示到笔记本上。我们从 Chartify 获得的数据或示例数据集将是我们的data_frame 。 X 轴是日期,Y 轴是数量color_column将是fruit

Python3

ch.plot.scatter(data_frame=data, x_column='date',
                y_column='quantity', 
                color_column='fruit')
ch.show()

输出:

散点图

因此,我们构建了一个简单的散点图。现在让我们使用相同的数据集制作直方图。让我们绘制一个直方图,以可视化数据相对于数量的密度。

Python3

ch = chartify.Chart(y_axis_type='density')

为了绘制直方图,我们将使用直方图方法。就像散点图一样,即使是直方图也需要一个data_frame参数。 color_columncolor_order的工作方式与在散点图中的工作方式相同。 method参数接受一个方法并在此基础上计算图形的密度。计数是默认方法。

现在让我们设置图表的属性。

Python3

ch.set_title("Quantity vs Count")
ch.axes.set_xaxis_label("Quantity")
ch.axes.set_yaxis_label("Count")
ch.set_source_label("Source:Chartify Examples")

现在让我们使用前面提到的方法绘制直方图。

Python3

ch.plot.histogram(data_frame=data, values_column='quantity')
ch.show()

输出:

直方图

因此,在本文中,我们使用 Spotify 的 Chartify 绘制了直方图和散点图。这只是一篇初学者文章,同样的知识可以进一步扩展以构建更复杂的可视化。