Volume Profile

通过横向双向条形图比较各价格区间的成交量。

适用场景

  • 当界面需要以下行为时使用 Volume Profile:通过横向双向条形图比较各价格区间的成交量。

安装

选择安装方式,用法示例将同步更新导入路径。

$ bunx --bun shadcn-vue@2.8.2 add https://orvui.efu.me/r/volume-profile.json https://orvui.efu.me/r/tabs.json

首次使用时,将安装的 src/components/orvui/styles.css 导入项目样式入口。

示例

预览

BTC / USD

Volume by price · Demo data

Total volume
2,271 BTC
Point of control
$65,050
Value area · 70% target
$64,700 – $65,400
64.2% of volume
BTC volume profile data
Price rangeVolumeSharePoint of controlValue area
$64,000 to $64,100180.8%NoNo
$64,100 to $64,200271.2%NoNo
$64,200 to $64,300361.6%NoNo
$64,300 to $64,400522.3%NoNo
$64,400 to $64,500703.1%NoNo
$64,500 to $64,600964.2%NoNo
$64,600 to $64,7001355.9%NoNo
$64,700 to $64,8001727.6%NoYes
$64,800 to $64,9002059.0%NoYes
$64,900 to $65,00024110.6%NoYes
$65,000 to $65,10027812.2%YesYes
$65,100 to $65,2002259.9%NoYes
$65,200 to $65,3001928.5%NoYes
$65,300 to $65,4001466.4%NoYes
$65,400 to $65,5001084.8%NoNo
$65,500 to $65,600793.5%NoNo
$65,600 to $65,700562.5%NoNo
$65,700 to $65,800421.8%NoNo
$65,800 to $65,900311.4%NoNo
$65,900 to $66,000221.0%NoNo
$66,000 to $66,100160.7%NoNo
$66,100 to $66,200110.5%NoNo
$66,200 to $66,30080.4%NoNo
$66,300 to $66,40050.2%NoNo

状态与事件

需要由表单、路由或父组件管理时,绑定下列状态并接收对应更新。v-model 是属性与 update 事件的简写;值的类型应与 API 一致。

组件状态绑定
组件Vue 绑定更新事件
VolumeProfilev-model:activeIdnull | stringupdate:activeId

可选受控属性未传入时,按组件文档的默认行为工作;不要用固定的 false 或空值代替未传入。异步请求和持久化在应用中处理,再把结果传回组件。

API 参考

VolumeProfile

data
readonly VolumeProfileBin[]
—
label?
string
"Volume profile"
unit?
string
"units"
formatPrice?
(value: number) => string
formatNumber
formatVolume?
(value: number) => string
formatNumber
valueArea?
number | false
undefined
color?
string
"#6366f1"
pocColor?
string
"#f59e0b"
activeId?
null | string
—
defaultActiveId?
null | string
null
className?
string
—

事件

update:activeId
—
@update:activeId
activeChange
—
@activeChange

插槽

default
() => VNodeChild
#default

VolumeProfilePlot

barClassName?
string
—
showAxes?
boolean
true

插槽

default
() => VNodeChild
#default

VolumeProfileTooltip

side?
"top" | "bottom" | "left" | "right"
"top"

插槽

default
—

作用域参数: row

#default

无障碍

为交互控件提供明确的无障碍名称。保留文档中的键盘路径、可见焦点与减少动态效果状态;自定义插槽应继续保留所替代部件的语义。

常见问题

如何配置 Volume Profile?
通过 data、label、unit、formatPrice、formatVolume、valueArea、color、pocColor、activeId、defaultActiveId、className 配置 Volume Profile;API 表列出其类型与默认值。
如何连接到应用状态?
监听 update:activeId、activeChange,将组件连接到应用状态。
可以在服务端渲染吗?
可以在 Vue SSR 应用中正常渲染。服务端与客户端的初始 props 应保持一致;浏览器测量与交互资源在挂载后启动。

更新于