python - 如何在 Pandas 中绘制条形图?
问题描述
我有一个似乎很基本的问题。我有一个数据框,想从一些列中绘制(busLine、PassengerCount、department_time、destination_time)
线 | 乘客人数 | 出发时间 | 目的地时间 |
---|---|---|---|
AC03 | 11 | 2019-12-18 06:00:00 | 2019-12-18 06:30:00 |
CV47 | 24 | 2019-12-18 06:00:00 | 2019-12-18 06:30:00 |
DC15 | 1 | 2019-12-18 05:30:00 | 2019-12-18 06:00:00 |
... | ... | ... | ... |
我想在 x 轴 [departure_time,destination_time]、y 轴乘客计数中绘制,并根据时间和乘客人数用 Line (AC03, CV47, DC15) 标记条形。我对熊猫很陌生,发现很难实现。请问,如何有效地解决这个问题?
解决方案
您可以使用一些图形库。最标准的是matplotlib。我最喜欢的是 plotly,因为它创建了交互式图表,让您可以将鼠标悬停在特定数据点上以查看基础数据。Plotly 也有 IMO 有一个更好的 API,这使得创建图表变得更加简单。
要在 plotly 中创建条形图,您可以执行以下操作:
import plotly.graph_objects as go
fig = go.Figure(data=[
go.Bar(name='Departure Time', x=df['departure_time'], y=df['PassengerCount'], color=df['Line']),
go.Bar(name='Destination Time', x=df['destination_time'], y=df['PassengerCount'], color=df['Line'])
])
我认为这应该可以解决问题!
如果写出该代码不是自然而然的,那么还有一些 python 包可以为您提供用于创建这些图形的 GUI,我实际上是其中一个的创建者。如果您有兴趣,请查看Mito。
推荐阅读
- python - 重新排序python条形图
- python - 如何将一个较小 DataFrame 的值添加到另一个混合类型 DataFrame 的一部分,但仅添加到某个任意行索引之后的行?
- python - 将函数中的值放入上下文中
- java - 如何在 C++ 中捕获 sdbus::Error 异常?
- node.js - Windows但Mac上的Nodejs zlib gunzip“无效块类型”错误
- javascript - 在房间重新连接后,套接字 io 未接收到事件
- encryption - 准备在 EME 中使用的音频文件
- parsing - Haskell:函数中的非穷举模式阻止另一个函数执行,即使它没有被使用
- flutter - Flutter MaterialPageRoute 作为 fullscreenDialog 出现在 BottomNavigationBar 下方
- javascript - 在百里香中预填充下拉选择列表