通过与 Jira 对比,让您更全面了解 PingCode

  • 首页
  • 需求与产品管理
  • 项目管理
  • 测试与缺陷管理
  • 知识管理
  • 效能度量
        • 更多产品

          客户为中心的产品管理工具

          专业的软件研发项目管理工具

          简单易用的团队知识库管理

          可量化的研发效能度量工具

          测试用例维护与计划执行

          以团队为中心的协作沟通

          研发工作流自动化工具

          账号认证与安全管理工具

          Why PingCode
          为什么选择 PingCode ?

          6000+企业信赖之选,为研发团队降本增效

        • 行业解决方案
          先进制造(即将上线)
        • 解决方案1
        • 解决方案2
  • Jira替代方案

25人以下免费

目录

python如何做数据可视化

python如何做数据可视化

Python做数据可视化的方法有很多,包括Matplotlib、Seaborn、Plotly、Bokeh和Pandas等工具包、每个工具包都有其特点和优势。其中,Matplotlib是最基础的绘图库,Seaborn在其基础上提供了更高级的接口和更美观的样式,Plotly和Bokeh则提供了交互式图表的支持。以下将详细展开介绍如何使用这些工具来进行数据可视化。

一、MATPLOTLIB

Matplotlib是Python中最基础、最常用的数据可视化库。它提供了丰富的绘图功能,可以绘制各种静态、动态和交互式图表。

1、安装和基本使用

Matplotlib可以通过pip进行安装:

pip install matplotlib

安装完成后,可以使用以下代码创建一个简单的折线图:

import matplotlib.pyplot as plt

数据

x = [1, 2, 3, 4, 5]

y = [2, 3, 5, 7, 11]

绘图

plt.plot(x, y)

plt.xlabel('X轴标签')

plt.ylabel('Y轴标签')

plt.title('简单折线图')

plt.show()

2、常见图表类型

Matplotlib可以绘制多种类型的图表,包括折线图、柱状图、散点图、饼图等。以下是一些示例代码:

  • 折线图

plt.plot(x, y)

plt.show()

  • 柱状图

plt.bar(x, y)

plt.show()

  • 散点图

plt.scatter(x, y)

plt.show()

  • 饼图

labels = ['A', 'B', 'C', 'D']

sizes = [15, 30, 45, 10]

plt.pie(sizes, labels=labels)

plt.show()

二、SEABORN

Seaborn是基于Matplotlib构建的高级数据可视化库。它使得创建复杂的统计图表变得更加容易,并且图表更加美观。

1、安装和基本使用

Seaborn可以通过pip进行安装:

pip install seaborn

安装完成后,可以使用以下代码创建一个简单的散点图:

import seaborn as sns

import matplotlib.pyplot as plt

数据

tips = sns.load_dataset("tips")

绘图

sns.scatterplot(x="total_bill", y="tip", data=tips)

plt.show()

2、常见图表类型

Seaborn可以绘制多种类型的图表,包括散点图、折线图、箱线图、热力图等。以下是一些示例代码:

  • 散点图

sns.scatterplot(x="total_bill", y="tip", data=tips)

plt.show()

  • 折线图

sns.lineplot(x="size", y="total_bill", data=tips)

plt.show()

  • 箱线图

sns.boxplot(x="day", y="total_bill", data=tips)

plt.show()

  • 热力图

flights = sns.load_dataset("flights")

flights_pivot = flights.pivot("month", "year", "passengers")

sns.heatmap(flights_pivot)

plt.show()

三、PLOTLY

Plotly是一个功能强大的交互式数据可视化库。它支持多种类型的图表,并且可以轻松地嵌入到网页应用中。

1、安装和基本使用

Plotly可以通过pip进行安装:

pip install plotly

安装完成后,可以使用以下代码创建一个简单的折线图:

import plotly.express as px

数据

df = px.data.iris()

绘图

fig = px.scatter(df, x='sepal_width', y='sepal_length', color='species')

fig.show()

2、常见图表类型

Plotly可以绘制多种类型的图表,包括散点图、折线图、柱状图、饼图等。以下是一些示例代码:

  • 散点图

fig = px.scatter(df, x='sepal_width', y='sepal_length', color='species')

fig.show()

  • 折线图

fig = px.line(df, x='sepal_width', y='sepal_length', color='species')

fig.show()

  • 柱状图

fig = px.bar(df, x='species', y='sepal_width')

fig.show()

  • 饼图

fig = px.pie(df, values='sepal_width', names='species')

fig.show()

四、BOKEH

Bokeh是一个用于创建交互式图表的Python库。它可以生成高效的JavaScript代码,从而实现高效的数据可视化。

1、安装和基本使用

Bokeh可以通过pip进行安装:

pip install bokeh

安装完成后,可以使用以下代码创建一个简单的折线图:

from bokeh.plotting import figure, output_file, show

输出文件

output_file("line.html")

创建图表

p = figure(title="简单折线图", x_axis_label='X轴', y_axis_label='Y轴')

添加数据

p.line([1, 2, 3, 4, 5], [2, 3, 5, 7, 11])

显示图表

show(p)

2、常见图表类型

Bokeh可以绘制多种类型的图表,包括折线图、散点图、柱状图、饼图等。以下是一些示例代码:

  • 折线图

p.line([1, 2, 3, 4, 5], [2, 3, 5, 7, 11])

show(p)

  • 散点图

p.scatter([1, 2, 3, 4, 5], [2, 3, 5, 7, 11])

show(p)

  • 柱状图

p.vbar(x=[1, 2, 3, 4, 5], width=0.5, bottom=0, top=[2, 3, 5, 7, 11])

show(p)

  • 饼图

from math import pi

from bokeh.palettes import Category20c

from bokeh.transform import cumsum

import pandas as pd

数据

x = {

'A': 15,

'B': 30,

'C': 45,

'D': 10

}

data = pd.Series(x).reset_index(name='value').rename(columns={'index': 'label'})

data['angle'] = data['value']/data['value'].sum() * 2*pi

data['color'] = Category20c[len(x)]

创建图表

p = figure(plot_height=350, title="饼图示例", toolbar_location=None,

tools="hover", tooltips="@label: @value", x_range=(-0.5, 1.0))

添加数据

p.wedge(x=0, y=1, radius=0.4, start_angle=cumsum('angle', include_zero=True),

end_angle=cumsum('angle'), line_color="white", fill_color='color', legend_field='label', source=data)

显示图表

show(p)

五、PANDAS

Pandas是一个强大的数据分析库,也提供了简单但非常有用的可视化功能。它主要依赖于Matplotlib来绘制图表。

1、安装和基本使用

Pandas可以通过pip进行安装:

pip install pandas

安装完成后,可以使用以下代码创建一个简单的折线图:

import pandas as pd

import matplotlib.pyplot as plt

数据

data = {'x': [1, 2, 3, 4, 5], 'y': [2, 3, 5, 7, 11]}

df = pd.DataFrame(data)

绘图

df.plot(x='x', y='y')

plt.show()

2、常见图表类型

Pandas可以绘制多种类型的图表,包括折线图、散点图、柱状图、箱线图等。以下是一些示例代码:

  • 折线图

df.plot(x='x', y='y')

plt.show()

  • 散点图

df.plot.scatter(x='x', y='y')

plt.show()

  • 柱状图

df.plot.bar(x='x', y='y')

plt.show()

  • 箱线图

df.plot.box()

plt.show()

总结

Python提供了丰富的库来进行数据可视化,每个库都有其特点和优势。Matplotlib是最基础的绘图库,适合需要高自定义的用户;Seaborn在Matplotlib基础上提供了更高级和美观的接口;Plotly和Bokeh则适合需要交互式图表的用户;Pandas则提供了简单但非常实用的可视化功能。根据具体需求选择合适的工具,可以大大提高数据分析和展示的效率和效果。

相关问答FAQs:

数据可视化在Python中有哪些常用库?
在Python中,有几个非常流行的数据可视化库,包括Matplotlib、Seaborn、Plotly和Bokeh。Matplotlib是最基础的库,适合创建静态图表;Seaborn则是在Matplotlib的基础上进行扩展,提供更美观的统计图形;Plotly支持交互式图形,适合网页展示;而Bokeh同样强调交互性,适合大规模数据的可视化。

使用Python进行数据可视化时,如何选择合适的图表类型?
选择合适的图表类型取决于你想要传达的信息。例如,折线图适合展示时间序列数据的变化趋势,柱状图适合比较不同类别之间的数值,饼图则适合展示组成部分在整体中的占比。在决定图表类型时,考虑数据的性质和可视化的目标是至关重要的。

如何在Python中实现数据可视化的交互性?
要在Python中实现交互式数据可视化,可以使用Plotly或Bokeh等库。这些库提供了丰富的交互功能,如悬停提示、缩放和平移等。通过简单的API调用,你可以轻松创建动态图形,让用户与数据进行互动,从而更深入地理解数据背后的故事。

相关文章