123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177 |
- <template>
- <div id="chart-temp" style="width: 100%; height: 450px"></div>
- </template>
- <script>
- export default {
- name: "chartTemp",
- data() {
- return {
- myCharts: null
- }
- },
- props: {
- tempList: {
- type: Array
- }
- },
- watch: {
- tempList: {
- handler(newVal) {
- if(newVal) {
- this.myCharts.clear();
- this.init();
- }
- },
- deep: true,
- }
- },
- methods: {
- init() {
- let options;
- let that = this;
- if(this.tempList[0].length > 0) {
- options = {
- legend: {
- data: ['耳根温度', '环境温度'],
- x: 'center',
- y: '5%',
- },
- tooltip: {
- trigger: 'axis',
- // formatter: '{b} <br/>{a0}: {c0}℃',
- // position(pt) {
- // return [pt[0], '10%'];
- // },
- },
- dataZoom: [{
- type: 'inside',
- start: 90,
- end: 100,
- }, {
- start: 0,
- end: 10,
- handleIcon: 'M10.7,11.9v-1.3H9.3v1.3c-4.9,0.3-8.8,4.4-8.8,9.4c0,5,3.9,9.1,8.8,9.4v1.3h1.3v-1.3c4.9-0.3,8.8-4.4,8.8-9.4C19.5,16.3,15.6,12.2,10.7,11.9z M13.3,24.4H6.7V23h6.6V24.4z M13.3,19.6H6.7v-1.4h6.6V19.6z',
- handleSize: '80%',
- handleStyle: {
- color: '#fff',
- shadowBlur: 3,
- shadowColor: 'rgba(0, 0, 0, 0.6)',
- shadowOffsetX: 2,
- shadowOffsetY: 2,
- },
- }],
- grid: {
- left: '2%',
- right: '4%',
- bottom: '12%',
- containLabel: true,
- },
- xAxis: {
- type: 'category',
- boundaryGap: false,
- data: that.tempList[0],
- },
- yAxis: {
- type: 'value',
- name: '单位:℃',
- boundaryGap: [0, '100%'],
- min(value) {
- return value.min - 1;
- },
- axisLabel: {
- formatter(value) {
- return value.toFixed(2);
- },
- },
- },
- series: [
- {
- name: '耳根温度',
- type: 'line',
- smooth: true,
- // symbol: 'none',
- sampling: 'average',
- itemStyle: {
- normal: {
- color: '#7ED3F4', // 改变折线点的颜色
- // label: { // 显示数值
- // show: true
- // }
- },
- },
- data: that.tempList[1],
- },
- {
- name: '环境温度',
- type: 'line',
- smooth: true,
- sampling: 'average',
- itemStyle: {
- normal: {
- color: '#7387F3', // 改变折线点的颜色
- // label: { // 显示数值
- // show: true
- // }
- },
- },
- data: that.tempList[2],
- },
- ],
- }
- } else {
- options = {
- title: {
- text: '暂无数据',
- x: 'center',
- y: 'center',
- textStyle: {
- color: '#000000',
- fontWeight: 'normal',
- fontSize: 12,
- },
- },
- grid: {
- left: '3%',
- right: '4%',
- bottom: '3%',
- containLabel: true,
- },
- xAxis: {
- type: 'category',
- boundaryGap: false,
- data: [],
- axisLabel: {
- show: true,
- textStyle: {
- color: '#000000', // 更改坐标轴文字颜色
- },
- },
- },
- yAxis: {
- type: 'value',
- axisLabel: {
- show: true,
- textStyle: {
- color: '#000000', // 更改坐标轴文字颜色
- },
- },
- },
- }
- }
- this.myCharts.setOption(options);
- }
- },
- mounted() {
- this.myCharts = this.$echarts.init(document.getElementById('chart-temp'));
- this.init();
- window.onresize = () => {
- this.myCharts.resize();
- }
- }
- }
- </script>
- <style scoped>
- </style>
|