What is victory?
Victory is a collection of composable React components for building interactive data visualizations. It provides a wide range of chart types and is designed to be highly customizable and easy to use.
What are victory's main functionalities?
Line Chart
Victory allows you to create line charts easily. The code sample demonstrates how to create a simple line chart using VictoryLine and VictoryChart components.
const data = [
{ x: 1, y: 2 },
{ x: 2, y: 3 },
{ x: 3, y: 5 },
{ x: 4, y: 4 },
{ x: 5, y: 7 }
];
<VictoryChart>
<VictoryLine data={data} />
</VictoryChart>
Bar Chart
Victory makes it simple to create bar charts. The code sample shows how to create a bar chart using VictoryBar and VictoryChart components.
const data = [
{ x: 'A', y: 2 },
{ x: 'B', y: 3 },
{ x: 'C', y: 5 },
{ x: 'D', y: 4 },
{ x: 'E', y: 7 }
];
<VictoryChart>
<VictoryBar data={data} />
</VictoryChart>
Pie Chart
VictoryPie component allows you to create pie charts. The code sample demonstrates how to create a pie chart with different categories.
const data = [
{ x: 'Cats', y: 35 },
{ x: 'Dogs', y: 40 },
{ x: 'Birds', y: 25 }
];
<VictoryPie data={data} />
Scatter Plot
VictoryScatter component is used to create scatter plots. The code sample shows how to create a scatter plot using VictoryScatter and VictoryChart components.
const data = [
{ x: 1, y: 2 },
{ x: 2, y: 3 },
{ x: 3, y: 5 },
{ x: 4, y: 4 },
{ x: 5, y: 7 }
];
<VictoryChart>
<VictoryScatter data={data} />
</VictoryChart>
Other packages similar to victory
recharts
Recharts is a Redefined chart library built with React and D3. It provides a set of composable chart components that are easy to use and highly customizable. Compared to Victory, Recharts has a more extensive set of chart types and is known for its performance and ease of integration.
nivo
Nivo provides a rich set of dataviz components, built on top of D3 and React. It offers a wide range of chart types and is highly customizable. Nivo is known for its beautiful and responsive charts, and it provides a variety of themes and styles out of the box. Compared to Victory, Nivo offers more advanced features and better aesthetics.
react-chartjs-2
React wrapper for Chart.js, a popular JavaScript charting library. It provides a simple way to create charts using Chart.js in React applications. Compared to Victory, react-chartjs-2 is more lightweight and leverages the powerful Chart.js library for rendering charts.
Victory
Victory is an opinionated, but fully overridable, ecosystem of composable React components for building interactive data visualizations. This repo aggregates all of the stable Victory components so they can be conveniently included.
Important: This project is in alpha release. We're hard at work fixing bugs and improving the API. Be prepared for breaking changes!
Including components:
Components can be included individually
import {VictoryLine, VictoryAxis} from "victory"
<VictoryLine/>
Or imported as a set:
import * as V from "victory"
<V.VictoryLine/>
Components
You can read about these Victory components via interactive docs!
Animation
Wrap any Victory component with VictoryAnimation and it will transition smoothly between states whenever data changes. VictoryAnimation relies on d3's interpolator, so it knows how to transitions between colors, dates, numbers, strings etc.
Development
Please see DEVELOPMENT
Contributing
Please see CONTRIBUTING
Roadmap
Please see ROADMAP