mirror of
https://github.com/apache/superset.git
synced 2026-06-09 01:29:18 +00:00
feat(legacy-plugin-chart-histogram): cumulative histogram option (#1381)
* Add a cumulative option to make a cumulative histogram * also add in percentile in the hover popup * fix: add precision to percentile label * fix: formatting ES lint issues
This commit is contained in:
committed by
Yongjie Zhao
parent
f880b156d9
commit
98e2f744b3
@@ -38,6 +38,7 @@ const propTypes = {
|
||||
height: PropTypes.number.isRequired,
|
||||
colorScheme: PropTypes.string,
|
||||
normalized: PropTypes.bool,
|
||||
cumulative: PropTypes.bool,
|
||||
binCount: PropTypes.number,
|
||||
opacity: PropTypes.number,
|
||||
xAxisLabel: PropTypes.string,
|
||||
@@ -49,6 +50,7 @@ const defaultProps = {
|
||||
className: '',
|
||||
colorScheme: '',
|
||||
normalized: false,
|
||||
cumulative: false,
|
||||
opacity: 1,
|
||||
xAxisLabel: '',
|
||||
yAxisLabel: '',
|
||||
@@ -64,6 +66,7 @@ class CustomHistogram extends React.PureComponent {
|
||||
binCount,
|
||||
colorScheme,
|
||||
normalized,
|
||||
cumulative,
|
||||
opacity,
|
||||
xAxisLabel,
|
||||
yAxisLabel,
|
||||
@@ -100,6 +103,7 @@ class CustomHistogram extends React.PureComponent {
|
||||
height={parent.height}
|
||||
ariaLabel="Histogram"
|
||||
normalized={normalized}
|
||||
cumulative={cumulative}
|
||||
binCount={binCount}
|
||||
binType="numeric"
|
||||
margin={{ top: 20, right: 20 }}
|
||||
@@ -116,6 +120,10 @@ class CustomHistogram extends React.PureComponent {
|
||||
<strong>{t('cumulative')} </strong>
|
||||
{datum.cumulative}
|
||||
</div>
|
||||
<div>
|
||||
<strong>{t('percentile (exclusive)')} </strong>
|
||||
{`{((datum.cumulativeDensity - datum.density) * 100).toPrecision(4)}th`}
|
||||
</div>
|
||||
</div>
|
||||
)}
|
||||
valueAccessor={datum => datum}
|
||||
|
||||
@@ -131,6 +131,18 @@ const config: ControlPanelConfig = {
|
||||
},
|
||||
},
|
||||
],
|
||||
[
|
||||
{
|
||||
name: 'cumulative',
|
||||
config: {
|
||||
type: 'CheckboxControl',
|
||||
label: t('Cumulative'),
|
||||
renderTrigger: true,
|
||||
description: t('Whether to make the histogram cumulative'),
|
||||
default: false,
|
||||
},
|
||||
},
|
||||
],
|
||||
],
|
||||
},
|
||||
],
|
||||
|
||||
@@ -22,6 +22,7 @@ export default function transformProps(chartProps) {
|
||||
colorScheme,
|
||||
linkLength,
|
||||
normalized,
|
||||
cumulative,
|
||||
globalOpacity,
|
||||
xAxisLabel,
|
||||
yAxisLabel,
|
||||
@@ -35,6 +36,7 @@ export default function transformProps(chartProps) {
|
||||
binCount: parseInt(linkLength, 10),
|
||||
colorScheme,
|
||||
normalized,
|
||||
cumulative,
|
||||
opacity: globalOpacity,
|
||||
xAxisLabel,
|
||||
yAxisLabel,
|
||||
|
||||
Reference in New Issue
Block a user