deep-viz
Version:
A React component library, provide concise and beautiful diversity charts with Canvas, SVG, E-map, WebGL, Dom, based on data visualization experience and commercial data display practice.
1 lines • 3.6 kB
JavaScript
;Object.defineProperty(exports,"__esModule",{value:!0});var _createClass=function(){function o(e,t){for(var r=0;r<t.length;r++){var o=t[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}return function(e,t,r){return t&&o(e.prototype,t),r&&o(e,r),e}}(),_react=require("react"),_react2=_interopRequireDefault(_react),_propTypes=require("prop-types"),_propTypes2=_interopRequireDefault(_propTypes),_echartsForReact=require("echarts-for-react"),_echartsForReact2=_interopRequireDefault(_echartsForReact),_Basic2=require("./Basic"),_Basic3=_interopRequireDefault(_Basic2);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _possibleConstructorReturn(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function _inherits(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}var GraphChart=function(){function e(){return _classCallCheck(this,e),_possibleConstructorReturn(this,(e.__proto__||Object.getPrototypeOf(e)).apply(this,arguments))}return _inherits(e,_Basic3.default),_createClass(e,[{key:"getOption",value:function(e){var t=e.color,r=e.config,o=e.onTooltipFormat,a={color:t||this.color,toolbox:{show:!!r.toolbox,itemSize:this.fontSize,iconStyle:{normal:{borderColor:this.fontColor},emphasis:{borderColor:this.emphasisColor}},feature:{dataZoom:{},dataView:{readOnly:!1},restore:{},saveAsImage:{}},right:15,top:0},tooltip:{},animationDuration:1e3,animationEasingUpdate:"quinticInOut",series:[{name:"关系图",type:"graph",layout:"force",force:{repulsion:100},data:[],links:[],categories:[],roam:!1,label:{normal:{show:!0,position:"right",fontSize:this.fontSize,fontStyle:this.fontStyle}},lineStyle:{normal:{width:1,color:"source",curveness:0,type:"solid"}}}]},i=[];r.data.forEach(function(e){i.push(e.value)});var n=Math.max.apply(Math,i),s=Math.min.apply(Math,i);return r.data.forEach(function(e){var t=10+e.value-s/(n-s)*30;a.series[0].data.push({name:e.name,category:e.category,symbolSize:t||20,draggable:r.draggable||!0})}),a.series[0].links=r.links,a.series[0].categories=r.categories,r.legend&&(a.legend={show:!0,data:r.legend.data,textStyle:{color:this.fontColor,fontSize:this.fontSize}}),r.title&&(a.title={text:r.title,subtext:r.subtitle,textStyle:{color:this.titleColor,fontSize:this.titleSize}},a.legend.right=10),o&&(a.tooltip.formatter=function(e){return o(e)}),a}},{key:"render",value:function(){return _react2.default.createElement(_echartsForReact2.default,{option:this.getOption(this.props),style:this.props.style||{height:400,width:"100%"},notMerge:!0,lazyUpdate:!1,onEvents:this.props.onEvents})}}]),e}();(exports.default=GraphChart).propTypes={config:_propTypes2.default.shape({data:_propTypes2.default.array.isRequired,links:_propTypes2.default.array.isRequired,categories:_propTypes2.default.array.isRequired,legend:_propTypes2.default.object.isRequired,title:_propTypes2.default.string,subtitle:_propTypes2.default.string,draggable:_propTypes2.default.bool,toolbox:_propTypes2.default.bool}).isRequired,style:_propTypes2.default.object,onTooltipFormat:_propTypes2.default.func,onEvents:_propTypes2.default.object};