Skip to content

Commit a2ef4b0

Browse files
authored
Merge branch 'master' into betterPropTypeForChartType
2 parents 9f19958 + 8c2abe0 commit a2ef4b0

File tree

5 files changed

+70
-3
lines changed

5 files changed

+70
-3
lines changed

.editorconfig

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,14 @@ root = true
55
[*]
66
end_of_line = lf
77
charset = utf-8
8-
trim_trailing_whitespace = false
8+
trim_trailing_whitespace = true
99
insert_final_newline = true
10-
indent_style = tab
10+
indent_style = space
1111

1212
[*.json]
1313
indent_style = space
1414
indent_size = 2
15+
16+
[*.md]
17+
trim_trailing_whitespace = false
18+
indent_style = tab

README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -167,6 +167,10 @@ componentWillMount() {
167167
}
168168
```
169169

170+
### Scatter Charts
171+
172+
If you're using Chart.js 2.6 and below, add the `showLines: false` property to your chart options. This was later [added](https://github.com/chartjs/Chart.js/commit/7fa60523599a56255cde78a49e848166bd233c6e) in the default config, so users of later versions would not need to do this extra step.
173+
170174
### Events
171175

172176
#### onElementsClick || getElementsAtEvent (function)

example/src/components/scatter.js

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
import React from 'react';
2+
import {Scatter} from 'react-chartjs-2';
3+
4+
const data = {
5+
labels: ['Scatter'],
6+
datasets: [
7+
{
8+
label: 'My First dataset',
9+
fill: false,
10+
backgroundColor: 'rgba(75,192,192,0.4)',
11+
pointBorderColor: 'rgba(75,192,192,1)',
12+
pointBackgroundColor: '#fff',
13+
pointBorderWidth: 1,
14+
pointHoverRadius: 5,
15+
pointHoverBackgroundColor: 'rgba(75,192,192,1)',
16+
pointHoverBorderColor: 'rgba(220,220,220,1)',
17+
pointHoverBorderWidth: 2,
18+
pointRadius: 1,
19+
pointHitRadius: 10,
20+
data: [
21+
{ x: 65, y: 75 },
22+
{ x: 59, y: 49 },
23+
{ x: 80, y: 90 },
24+
{ x: 81, y: 29 },
25+
{ x: 56, y: 36 },
26+
{ x: 55, y: 25 },
27+
{ x: 40, y: 18 },
28+
]
29+
}
30+
]
31+
};
32+
33+
export default React.createClass({
34+
displayName: 'ScatterExample',
35+
36+
render() {
37+
return (
38+
<div>
39+
<h2>Scatter Example</h2>
40+
<Scatter data={data} />
41+
</div>
42+
);
43+
}
44+
});

example/src/example.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import HorizontalBarExample from './components/horizontalBar';
1010
import RadarExample from './components/radar';
1111
import PolarExample from './components/polar';
1212
import BubbleExample from './components/bubble';
13+
import ScatterExample from './components/scatter';
1314
import MixedDataExample from './components/mix';
1415
import RandomizedDataLineExample from './components/randomizedLine';
1516
import CrazyDataLineExample from './components/crazyLine';
@@ -37,6 +38,8 @@ class App extends React.Component {
3738
<hr />
3839
<BubbleExample />
3940
<hr />
41+
<ScatterExample />
42+
<hr />
4043
<MixedDataExample />
4144
<hr />
4245
<RandomizedDataLineExample />

src/index.js

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import isEqual from 'lodash.isequal';
66

77
class ChartComponent extends React.Component {
88
static getLabelAsKey = d => d.label;
9-
9+
1010
static propTypes = {
1111
data: PropTypes.oneOfType([
1212
PropTypes.object,
@@ -339,5 +339,17 @@ export class Bubble extends React.Component {
339339
}
340340
}
341341

342+
export class Scatter extends React.Component {
343+
render() {
344+
return (
345+
<ChartComponent
346+
{...this.props}
347+
ref={ref => this.chart_instance = ref && ref.chart_instance}
348+
type='scatter'
349+
/>
350+
);
351+
}
352+
}
353+
342354
export const defaults = Chart.defaults;
343355
export {Chart};

0 commit comments

Comments
 (0)