Comments (2)
Hi @nrocco,
I have made a new release today (1.1.29) that has the ability to select a bar, here is a simple example on how to use it:
<template>
<div class="flex">
<Chart
:size="{ width: 800, height: 400 }"
:data="data"
:axis="axis"
:margin="margin"
:direction="direction"
>
<template #layers>
<Grid strokeDasharray="2,2" :center="false" />
<HoverBar />
<Bar
:dataKeys="['name', 'avg']"
:barStyle="{ fill: '#FC96c7' }"
:barStyleSelected="{ fill: '#b1517f' }"
:selectedBar="selectedBar"
@bar-click="onBarClick"
/>
</template>
</Chart>
<div v-if="selectedBar">
<div>Selected bar index: {{selectedBar.idx}}</div>
<div>Selected bar props: {{selectedBar.props}}</div>
</div>
</div>
</template>
<script lang="ts">
import { defineComponent, ref } from '@vue/runtime-core'
import * as mockup from '@/mockup'
export default defineComponent({
setup() {
const data = ref<any>(mockup.plByMonth)
const margin = ref({
left: 10,
top: 10,
right: 10,
bottom: 10
})
const selectedBar = ref(null)
function onBarClick(bar: any) {
selectedBar.value = bar
}
return { data, margin, selectedBar, onBarClick }
}
})
</script>
Don't forget to add vue3-charts components if you don't import them:
import Vue3Charts from 'vue3-charts'
....
app.use(Vue3Charts)
from vue3-charts.
@ghalex Nice!
I can confirm that the new click functionality from 1.1.29
works.
Instead of @bar-click="onBarClick"
I had to use @barClick="onBarClick"
to make it work.
Tips for others reading this, if you want the mouse cursor to change to a pointer (similar to <a href />
) use this in barStyle
:
<Bar
...
:barStyle="{ fill: '#rrggbb', cursor: 'pointer' }"
...
/>
I will close this issue.
from vue3-charts.
Related Issues (20)
- typescript types declarations HOT 1
- Tooltip? HOT 2
- console.log in Area file HOT 1
- Responsivity: how to make the chart take the full width/space available HOT 2
- vite vue ts build errors HOT 4
- noUse of eval is strongly discouraged HOT 3
- [expoert type] please export AxisConfig interface HOT 1
- [new feature] can add axis text labels in multi line HOT 1
- [export type] please export AxisConfig interface
- How to draw chart (e.g: Line, Bar...) from Y-axis to end of the chart right-side?
- Consider adding an example with "linear" x-axis
- Can I use vue3-charts without build step?
- How do you make the stacked bar chart? HOT 2
- my nuxt app crashes as soon as I install this library! HOT 1
- How to refresh a chart? HOT 1
- Tooltip z-index issue when having multiple charts HOT 1
- ResizeObserver loop limit exceeded HOT 2
- No responsiveness possible on BarChart
- Can't import Labels component
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from vue3-charts.