想用 Python plot 怎么显示 数据?别愁,方法多得很!数据可视化这块,Python 可是强项,各种库让你轻松做出好看又实用的图表。
先说说我最常用的 Matplotlib。这玩意儿就像个老朋友,虽然有时候感觉它画出来的图有点“朴素”,但胜在功能强大,啥都能画。要用 Matplotlib 显示 plot,最简单的方法就是:
“`python
import matplotlib.pyplot as plt
一些数据
x = [1, 2, 3, 4, 5]
y = [2, 4, 1, 3, 5]
plt.plot(x, y)
plt.xlabel(“X 轴”)
plt.ylabel(“Y 轴”)
plt.title(“简单折线图”)
plt.show() #关键就在这句!
“`
plt.show()
,就是这句,把你的图给 显示 出来!如果没有这句,你可能啥也看不到。是不是感觉很简单?
不过,Matplotlib 默认 显示 的图,有时候确实不够“惊艳”。想要更炫酷的图,可以试试 Seaborn。Seaborn 是基于 Matplotlib 的,它能让你用更少的代码,做出更好看的统计图。比如:
“`python
import seaborn as sns
import matplotlib.pyplot as plt
加载一个内置数据集
iris = sns.load_dataset(‘iris’)
sns.scatterplot(x=’sepal_length’, y=’sepal_width’, hue=’species’, data=iris)
plt.title(“鸢尾花数据集散点图”)
plt.show()
“`
Seaborn 自带很多好看的样式,而且它和 Pandas 的 DataFrame 结合得非常好,处理数据非常方便。我个人很喜欢用 Seaborn 做探索性数据分析 (EDA)。
除了 Matplotlib 和 Seaborn,还有 Plotly 也是个不错的选择。Plotly 的图是交互式的,你可以放大缩小、悬停查看数据,用户体验非常好。Plotly 可以生成 HTML 文件,方便你分享给别人。
“`python
import plotly.express as px
df = px.data.iris()
fig = px.scatter(df, x=”sepal_width”, y=”sepal_length”, color=”species”,
title=”鸢尾花数据集交互式散点图”)
fig.show() #同样是 show() 方法,但这是 Plotly 的 show()
“`
看看,生成的图是不是可以互动?Plotly 的 显示 效果非常棒,尤其适合做需要用户交互的可视化项目。
还有个我最近才开始用的库,叫 Bokeh。Bokeh 也支持交互式可视化,而且它在处理大数据方面表现更好。Bokeh 的图可以在浏览器里 显示,也可以嵌入到 Web 应用里。
“`python
from bokeh.plotting import figure, show
from bokeh.models import ColumnDataSource
数据
x = [1, 2, 3, 4, 5]
y = [2, 5, 8, 2, 7]
创建 ColumnDataSource
source = ColumnDataSource(data=dict(x=x, y=y))
创建 figure 对象
p = figure(title=”Bokeh 简单折线图”, x_axis_label=”X 轴”, y_axis_label=”Y 轴”)
添加 line glyph
p.line(‘x’, ‘y’, source=source, line_width=3)
显示图形
show(p)
“`
注意到没?不同的库,显示 plot 的方法可能略有不同,但核心思想都是把数据转换成可视化的图形,然后用特定的函数把它 显示 出来。
有时候,你可能需要在 Jupyter Notebook 里面 显示 plot。在 Jupyter Notebook 里,你可以用 %matplotlib inline
或 %matplotlib notebook
命令来设置 Matplotlib 的 显示 方式。%matplotlib inline
会把图嵌入到 Notebook 里面,%matplotlib notebook
会生成交互式的图。
另外,如果你用的是 VS Code 这样的 IDE,可能需要安装一些插件才能正常 显示 plot。比如,你需要安装 Python 插件,并且配置好 Matplotlib 的 backend。
遇到 Python plot 怎么显示 不出来的情况,别慌,先检查一下:
- 你是不是忘了调用
plt.show()
或其他库的show()
方法? - 你的 Matplotlib backend 是不是配置正确?
- 你的 Jupyter Notebook 或 IDE 是不是安装了必要的插件?
排查一下这些问题,基本上就能解决大部分 显示 问题了。
最后,我想说的是,数据可视化不仅仅是画图,更重要的是通过图表来发现数据背后的故事。选择合适的库,掌握正确的 显示 方法,你就能把你的数据变成有价值的信息。相信我,当你看到自己画出来的图表,清晰地展示出数据的规律和趋势时,你会有一种成就感的!加油!