This commit is contained in:
lb 2024-01-04 10:58:20 +08:00
parent 0b1d3aa4b3
commit ac772e2caf
15 changed files with 241 additions and 111 deletions

View File

@ -53,7 +53,9 @@ function WindFrequence(props) {
useEffect(() => {
setCurrentLineTemp(
(currentTempList && currentTempList[1+lines.indexOf(dataSource)+'#']) || []
(currentTempList &&
currentTempList[1 + lines.indexOf(dataSource) + "#"]) ||
[]
);
}, [dataSource]);
@ -70,65 +72,113 @@ function WindFrequence(props) {
<SmallBox>
<h1 className={cls.areaName}>A1区板上</h1>
<div className={cls.areaContent}>
<span className={cls.areaValue}>{currentLineTemp[0] || 0} </span>
<span className={cls.areaValue}>{currentLineTemp[1] || 0} </span>
<span className={cls.areaValue}>{currentLineTemp[2] || 0} </span>
<span className={cls.areaValue}>
{(+currentLineTemp[0]).toFixed(2) || 0}
</span>
<span className={cls.areaValue}>
{(+currentLineTemp[1]).toFixed(2) || 0}
</span>
<span className={cls.areaValue}>
{(+currentLineTemp[2]).toFixed(2) || 0}
</span>
</div>
</SmallBox>
<SmallBox>
<h1 className={cls.areaName}>A2区板上</h1>
<div className={cls.areaContent}>
<span className={cls.areaValue}>{currentLineTemp[6] || 0} </span>
<span className={cls.areaValue}>{currentLineTemp[7] || 0} </span>
<span className={cls.areaValue}>{currentLineTemp[8] || 0} </span>
<span className={cls.areaValue}>
{(+currentLineTemp[6]).toFixed(2) || 0}
</span>
<span className={cls.areaValue}>
{(+currentLineTemp[7]).toFixed(2) || 0}
</span>
<span className={cls.areaValue}>
{(+currentLineTemp[8]).toFixed(2) || 0}
</span>
</div>
</SmallBox>
<SmallBox>
<h1 className={cls.areaName}>B区板上</h1>
<div className={cls.areaContent}>
<span className={cls.areaValue}>{currentLineTemp[12] || 0} </span>
<span className={cls.areaValue}>{currentLineTemp[13] || 0} </span>
<span className={cls.areaValue}>{currentLineTemp[14] || 0} </span>
<span className={cls.areaValue}>
{(+currentLineTemp[12]).toFixed(2) || 0}
</span>
<span className={cls.areaValue}>
{(+currentLineTemp[13]).toFixed(2) || 0}
</span>
<span className={cls.areaValue}>
{(+currentLineTemp[14]).toFixed(2) || 0}
</span>
</div>
</SmallBox>
<SmallBox>
<h1 className={cls.areaName}>C区板上</h1>
<div className={cls.areaContent}>
<span className={cls.areaValue}>{currentLineTemp[18] || 0} </span>
<span className={cls.areaValue}>{currentLineTemp[19] || 0} </span>
<span className={cls.areaValue}>{currentLineTemp[20] || 0} </span>
<span className={cls.areaValue}>
{(+currentLineTemp[18]).toFixed(2) || 0}
</span>
<span className={cls.areaValue}>
{(+currentLineTemp[19]).toFixed(2) || 0}
</span>
<span className={cls.areaValue}>
{(+currentLineTemp[20]).toFixed(2) || 0}
</span>
</div>
</SmallBox>
<SmallBox>
<h1 className={cls.areaName}>A1区板下</h1>
<div className={cls.areaContent}>
<span className={cls.areaValue}>{currentLineTemp[3] || 0} </span>
<span className={cls.areaValue}>{currentLineTemp[4] || 0} </span>
<span className={cls.areaValue}>{currentLineTemp[5] || 0} </span>
<span className={cls.areaValue}>
{(+currentLineTemp[3]).toFixed(2) || 0}
</span>
<span className={cls.areaValue}>
{(+currentLineTemp[4]).toFixed(2) || 0}
</span>
<span className={cls.areaValue}>
{(+currentLineTemp[5]).toFixed(2) || 0}
</span>
</div>
</SmallBox>
<SmallBox>
<h1 className={cls.areaName}>A2区板下</h1>
<div className={cls.areaContent}>
<span className={cls.areaValue}>{currentLineTemp[9] || 0} </span>
<span className={cls.areaValue}>{currentLineTemp[10] || 0} </span>
<span className={cls.areaValue}>{currentLineTemp[11] || 0} </span>
<span className={cls.areaValue}>
{(+currentLineTemp[9]).toFixed(2) || 0}
</span>
<span className={cls.areaValue}>
{(+currentLineTemp[10]).toFixed(2) || 0}
</span>
<span className={cls.areaValue}>
{(+currentLineTemp[11]).toFixed(2) || 0}
</span>
</div>
</SmallBox>
<SmallBox>
<h1 className={cls.areaName}>B区板下</h1>
<div className={cls.areaContent}>
<span className={cls.areaValue}>{currentLineTemp[15] || 0} </span>
<span className={cls.areaValue}>{currentLineTemp[16] || 0} </span>
<span className={cls.areaValue}>{currentLineTemp[17] || 0} </span>
<span className={cls.areaValue}>
{(+currentLineTemp[15]).toFixed(2) || 0}
</span>
<span className={cls.areaValue}>
{(+currentLineTemp[16]).toFixed(2) || 0}
</span>
<span className={cls.areaValue}>
{(+currentLineTemp[17]).toFixed(2) || 0}
</span>
</div>
</SmallBox>
<SmallBox>
<h1 className={cls.areaName}>C区板下</h1>
<div className={cls.areaContent}>
<span className={cls.areaValue}>{currentLineTemp[21] || 0} </span>
<span className={cls.areaValue}>{currentLineTemp[22] || 0} </span>
<span className={cls.areaValue}>{currentLineTemp[23] || 0} </span>
<span className={cls.areaValue}>
{(+currentLineTemp[21]).toFixed(2) || 0}
</span>
<span className={cls.areaValue}>
{(+currentLineTemp[22]).toFixed(2) || 0}
</span>
<span className={cls.areaValue}>
{(+currentLineTemp[23]).toFixed(2) || 0}
</span>
</div>
</SmallBox>
<SmallBox split={false} style={{ position: "relative" }}>
@ -146,14 +196,14 @@ function WindFrequence(props) {
></Button>
</Tooltip>
</div>
<span className={cls.areaPureValue}>
{currentLineTemp[26] || 0}
<span className={cls.areaPureValue} style={{ fontSize: "12px" }}>
{(+currentLineTemp[26]).toFixed(2) || 0}
</span>
<span className={cls.areaPureValue}>
{currentLineTemp[27] || 0}
<span className={cls.areaPureValue} style={{ fontSize: "12px" }}>
{(+currentLineTemp[27]).toFixed(2) || 0}
</span>
<span className={cls.areaPureValue}>
{currentLineTemp[28] || 0}
<span className={cls.areaPureValue} style={{ fontSize: "12px" }}>
{(+currentLineTemp[28]).toFixed(2) || 0}
</span>
</div>
</SmallBox>
@ -173,27 +223,31 @@ function WindFrequence(props) {
></Button>
</Tooltip>
</div>
<span className={cls.areaPureValue}>
{currentLineTemp[29] || 0}
<span className={cls.areaPureValue} style={{ fontSize: "12px" }}>
{(+currentLineTemp[29]).toFixed(2) || 0}
</span>
<span className={cls.areaPureValue}>
{currentLineTemp[30] || 0}
<span className={cls.areaPureValue} style={{ fontSize: "12px" }}>
{(+currentLineTemp[30]).toFixed(2) || 0}
</span>
<span className={cls.areaPureValue}>
{currentLineTemp[31] || 0}
<span className={cls.areaPureValue} style={{ fontSize: "12px" }}>
{(+currentLineTemp[31]).toFixed(2) || 0}
</span>
</div>
</SmallBox>
<SmallBox>
<h1 className={cls.areaName}>RET1区</h1>
<div className={cls.areaContent}>
<span className={cls.areaValue}>{currentLineTemp[24] || 0} </span>
<span className={cls.areaValue}>
{(+currentLineTemp[24]).toFixed(2) || 0}
</span>
</div>
</SmallBox>
<SmallBox>
<h1 className={cls.areaName}>RET2区</h1>
<div className={cls.areaContent}>
<span className={cls.areaValue}>{currentLineTemp[25] || 0} </span>
<span className={cls.areaValue}>
{(+currentLineTemp[25]).toFixed(2) || 0}
</span>
</div>
</SmallBox>
</div>

View File

@ -15,34 +15,76 @@ function EnergyCost(props) {
className={`${cls.info__item} flex flex-col justify-center items-center`}
style={{ width: "112px", padding: 0 }}
>
<span style={{ fontSize: "20px", letterSpacing: '2px', lineHeight: 1.5 }}>余热发电</span>
<span style={{ fontSize: "20px", color: "#3ce8ff", lineHeight: 1.5 }}>
<span
style={{
fontSize: "20px",
letterSpacing: "2px",
lineHeight: 1.5,
}}
>
余热发电
</span>
<span
style={{ fontSize: "20px", color: "#3ce8ff", lineHeight: 1.5 }}
>
{(+energyInfo?.elecQty1)?.toFixed(2) || 0}kWh
</span>
</div>
<div className={cls.info__item_groups}>
<div className={cls.info__item}>
<i style={{ fontSize: "18px", fontStyle: "normal", paddingRight: '6px' }}>水耗量</i>
<i
style={{
fontSize: "18px",
fontStyle: "normal",
paddingRight: "6px",
}}
>
水耗量
</i>
<span style={{ fontSize: "17px", color: "#3ce8ff" }}>
{(+energyInfo?.waterQty)?.toFixed(2) || 0}Km³
</span>
</div>
<div className={cls.info__item}>
<i style={{ fontSize: "18px", fontStyle: "normal", paddingRight: '6px' }}>天然气I</i>
<i
style={{
fontSize: "18px",
fontStyle: "normal",
paddingRight: "6px",
}}
>
天然气I
</i>
<span style={{ fontSize: "17px", color: "#3ce8ff" }}>
{energyInfo?.ngQty1 || 0}
{energyInfo?.ngQty1 || "0Nm³"}
</span>
</div>
<div className={cls.info__item}>
<i style={{ fontSize: "18px", fontStyle: "normal", paddingRight: '6px' }}>电耗量</i>
<i
style={{
fontSize: "18px",
fontStyle: "normal",
paddingRight: "6px",
}}
>
电耗量
</i>
<span style={{ fontSize: "17px", color: "#3ce8ff" }}>
{(+energyInfo?.elecQty2)?.toFixed(2) || 0}kWh
</span>
</div>
<div className={cls.info__item}>
<i style={{ fontSize: "18px", fontStyle: "normal", paddingRight: '6px' }}>天然气II</i>
<i
style={{
fontSize: "18px",
fontStyle: "normal",
paddingRight: "6px",
}}
>
天然气II
</i>
<span style={{ fontSize: "17px", color: "#3ce8ff" }}>
{energyInfo?.ngQty2 || 0}
{energyInfo?.ngQty2 || "0Nm³"}
</span>
</div>
</div>

View File

@ -106,7 +106,7 @@ function getOptions(source, period, trend) {
if (trend[source].length === 0) return null;
return {
color: ["#FFD160", "#12FFF5", "#2760FF"],
grid: { top: 38, right: 12, bottom: 20, left: 48 },
grid: { top: 40, right: 12, bottom: 20, left: 56 },
xAxis: {
type: "category",
// data: Array(7)
@ -133,16 +133,16 @@ function getOptions(source, period, trend) {
},
},
yAxis: {
name: source == 'O2_float' ? "单位:%" : "单位mg/m³",
name: source == "O2_float" ? "单位:%" : "单位mg/m³",
nameTextStyle: {
color: "#fff",
fontSize: 10,
fontSize: 16,
align: "right",
},
type: "value",
axisLabel: {
color: "#fff",
fontSize: 12,
fontSize: 14,
formatter: "{value} %",
},
axisLine: {
@ -162,7 +162,7 @@ function getOptions(source, period, trend) {
},
series: [
{
data: trend[source].map((item) => item.value),
data: trend[source].map((item) => !(item.value == null || isNaN(+item.value)) ? (+item.value).toFixed(2) : null),
type: "line",
areaStyle: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
@ -208,6 +208,11 @@ function getOptions(source, period, trend) {
],
tooltip: {
trigger: "axis",
axisPointer: {
type: "shadow",
},
className: "xc-chart-tooltip",
// backgroundColor: ''
},
};
}

View File

@ -140,7 +140,8 @@ function getOptions(dataList, showMore, dateType) {
};
const seriesTeam = [
{
data: list.map((item) => item.day * 100),
name: '白班',
data: list.map((item) => (item.day * 100).toFixed(2)),
type: "line",
areaStyle: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
@ -152,7 +153,8 @@ function getOptions(dataList, showMore, dateType) {
// smooth: true,
},
{
data: list.map((item) => item.night * 100),
name: '夜班',
data: list.map((item) => (item.night * 100).toFixed(2)),
type: "line",
areaStyle: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
@ -172,7 +174,8 @@ function getOptions(dataList, showMore, dateType) {
tooltip: {
trigger: "axis",
color: "#fff",
formatter: "{b} {c}%",
// formatter: "{b} {c}%",
formatter: showMore ? "{a0} {c0}%<br />{a1} {c1}%<br />{a2} {c2}%" : "{b} {c}%",
axisPointer: {
type: "shadow",
},
@ -184,6 +187,7 @@ function getOptions(dataList, showMore, dateType) {
},
series: [
{
name: '总量',
data: list.map((item) => (item.sum * 100).toFixed(2)),
type: "line",
symbol: 'circle',

View File

@ -93,7 +93,7 @@ function getOptions(period, trend) {
];
return {
color: colors,
grid: { top: 38, right: 12, bottom: 20, left: 80 },
grid: { top: 40, right: 12, bottom: 20, left: 80 },
legend: {
show: false,
icon: "roundRect",
@ -139,7 +139,7 @@ function getOptions(period, trend) {
},
},
yAxis: {
name: "单位/h",
name: "单位/Nm³",
nameTextStyle: {
color: "#fff",
fontSize: 16,
@ -164,7 +164,7 @@ function getOptions(period, trend) {
},
},
series: {
data: trend[period],
data: trend[period].map(item => item.toFixed(2)),
type: "line",
symbol: "circle",
symbolSize: 6,

View File

@ -80,7 +80,7 @@ function getOptions(period, trend) {
];
return {
color: colors,
grid: { top: 38, right: 12, bottom: 20, left: 48 },
grid: { top: 40, right: 12, bottom: 20, left: 80 },
legend: {
show: false,
icon: "roundRect",
@ -93,7 +93,7 @@ function getOptions(period, trend) {
height: 8,
textStyle: {
color: "#DFF1FE",
fontSize: 10,
fontSize: 12,
},
},
xAxis: {
@ -111,7 +111,7 @@ function getOptions(period, trend) {
// .reverse(),
axisLabel: {
color: "#fff",
fontSize: 12,
fontSize: 14,
},
axisTick: { show: false },
axisLine: {
@ -122,16 +122,16 @@ function getOptions(period, trend) {
},
},
yAxis: {
name: "单位/h",
name: "单位/kWh",
nameTextStyle: {
color: "#fff",
fontSize: 10,
fontSize: 16,
align: "right",
},
type: "value",
axisLabel: {
color: "#fff",
fontSize: 12,
fontSize: 14,
formatter: "{value}",
},
axisLine: {

View File

@ -25,25 +25,35 @@ function Energy(props) {
gridRow: "1 / 3",
}}
>
<span style={{ lineHeight: 1.5 }}> </span>
<span style={{ lineHeight: 1.5 }}>{energyInfo?.elecQty1 || 0}kWh</span>
<span style={{ lineHeight: 1.5 }}>余热发电/kWh</span>
<span style={{ lineHeight: 1.5, width: '180px', wordWrap: 'break-word' }}>
{(+energyInfo?.elecQty1)?.toFixed(2) || 0}
</span>
</span>
<span className={cls.shadowBorder + " " + cls.infoText}>
<span style={{ lineHeight: 1.5 }}> </span>{" "}
<span style={{ lineHeight: 1.5 }}>{energyInfo?.waterQty || 0}Km³</span>
<span style={{ lineHeight: 1.5 }}>水耗量/Km³</span>
<span style={{ lineHeight: 1.5 }}>
{(+energyInfo?.waterQty)?.toFixed(2) || 0}
</span>
</span>
<span className={cls.shadowBorder + " " + cls.infoText}>
<span style={{ lineHeight: 1.5 }}> I</span>{" "}
<span style={{ lineHeight: 1.5 }}>{energyInfo?.ngQty1 || 0}</span>
<span style={{ lineHeight: 1.5 }}>天然气I/Nm³</span>
<span style={{ lineHeight: 1.5 }}>
{energyInfo?.ngQty1?.replace("Nm³", "") || "0"}
</span>
</span>
<span className={cls.shadowBorder + " " + cls.infoText}>
<span style={{ lineHeight: 1.5 }}> </span>{" "}
<span style={{ lineHeight: 1.5 }}>{energyInfo?.elecQty2 || 0}kWh</span>
<span style={{ lineHeight: 1.5 }}>电耗量/kWh</span>
<span style={{ lineHeight: 1.5 }}>
{(+energyInfo?.elecQty2)?.toFixed(2) || 0}
</span>
</span>
<span className={cls.shadowBorder + " " + cls.infoText}>
<span style={{ lineHeight: 1.5 }}> II</span>{" "}
<span style={{ lineHeight: 1.5 }}>{energyInfo?.ngQty2 || 0}</span>
<span style={{ lineHeight: 1.5 }}>天然气II/Nm³</span>
<span style={{ lineHeight: 1.5 }}>
{energyInfo?.ngQty2?.replace("Nm³", "") || "0"}
</span>
</span>
</div>
);

View File

@ -1,7 +1,8 @@
.layout {
display: grid;
gap: 6px;
grid-template-columns: 133px 158px 292px 292px;
/* grid-template-columns: 133px 158px 292px 292px; */
grid-template-columns: 133px 210px 266px 266px;
/* grid-template-rows: 60px 60px; */
grid-template-rows: 129px 129px;
}

View File

@ -85,7 +85,7 @@ function getOptions(source, period, trend) {
if (trend[source].length == 0) return null;
return {
color: ["#FFD160", "#12FFF5", "#2760FF"],
grid: { top: 38, right: 12, bottom: 20, left: 48 },
grid: { top: 40, right: 12, bottom: 20, left: 56 },
xAxis: {
type: "category",
// data: Array(7)
@ -112,17 +112,17 @@ function getOptions(source, period, trend) {
},
},
yAxis: {
name: "单位m³/h",
name: "单位mg/m³",
nameTextStyle: {
color: "#fff",
fontSize: 10,
fontSize: 12,
align: "right",
},
type: "value",
axisLabel: {
color: "#fff",
fontSize: 12,
formatter: "{value} %",
formatter: "{value}",
},
axisLine: {
show: true,
@ -141,7 +141,7 @@ function getOptions(source, period, trend) {
},
series: [
{
data: trend[source].map((item) => item.value),
data: trend[source].map((item) => !(item.value == null || isNaN(+item.value)) ? (+item.value).toFixed(2) : null),
type: "line",
areaStyle: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
@ -187,6 +187,11 @@ function getOptions(source, period, trend) {
],
tooltip: {
trigger: "axis",
axisPointer: {
type: "shadow",
},
className: "xc-chart-tooltip",
// backgroundColor: ''
},
};
}

View File

@ -85,7 +85,7 @@ function getOptions(source, period, trend) {
if (trend[source].length == 0) return null;
return {
color: ["#FFD160", "#12FFF5", "#2760FF"],
grid: { top: 38, right: 12, bottom: 20, left: 48 },
grid: { top: 40, right: 12, bottom: 20, left: 56 },
xAxis: {
type: "category",
// data: Array(7)
@ -112,17 +112,17 @@ function getOptions(source, period, trend) {
},
},
yAxis: {
name: "单位m³/h",
name: "单位mg/m³",
nameTextStyle: {
color: "#fff",
fontSize: 10,
fontSize: 12,
align: "right",
},
type: "value",
axisLabel: {
color: "#fff",
fontSize: 12,
formatter: "{value} %",
formatter: "{value}",
},
axisLine: {
show: true,
@ -141,7 +141,8 @@ function getOptions(source, period, trend) {
},
series: [
{
data: trend[source].map((item) => item.value),
// (isNaN((+"f")) ? 0 : (+"f")).toFixed(2)
data: trend[source].map((item) => !(item.value == null || isNaN(+item.value)) ? (+item.value).toFixed(2) : null),
type: "line",
symbol: "circle",
symbolSize: 6,

View File

@ -92,7 +92,7 @@ function getOptions(period, trend) {
];
return {
color: colors,
grid: { top: 38, right: 12, bottom: 20, left: 80 },
grid: { top: 40, right: 12, bottom: 20, left: 80 },
legend: {
show: false,
icon: "roundRect",
@ -138,10 +138,10 @@ function getOptions(period, trend) {
},
},
yAxis: {
name: "单位/h",
name: "单位/Nm³",
nameTextStyle: {
color: "#fff",
fontSize: 14,
fontSize: 16,
align: "right",
},
type: "value",
@ -163,7 +163,7 @@ function getOptions(period, trend) {
},
},
series: {
data: trend[period],
data: trend[period].map(item => item.toFixed(3)),
type: "line",
symbol: "circle",
symbolSize: 6,

View File

@ -85,7 +85,7 @@ function getOptions(source, period, trend) {
if (trend[source].length == 0) return null;
return {
color: ["#FFD160", "#12FFF5", "#2760FF"],
grid: { top: 38, right: 12, bottom: 20, left: 48 },
grid: { top: 40, right: 12, bottom: 20, left: 80 },
xAxis: {
type: "category",
// data: Array(7)
@ -112,18 +112,20 @@ function getOptions(source, period, trend) {
},
},
yAxis: {
name: "单位m³/h",
name: "单位/%",
nameTextStyle: {
color: "#fff",
fontSize: 10,
fontSize: 16,
align: "right",
},
type: "value",
axisLabel: {
color: "#fff",
fontSize: 12,
fontSize: 16,
formatter: "{value} %",
},
min: 0,
max: 100,
axisLine: {
show: true,
lineStyle: {
@ -141,7 +143,7 @@ function getOptions(source, period, trend) {
},
series: [
{
data: trend[source].map((item) => item.value),
data: trend[source].map((item) => !(item.value == null || isNaN(+item.value)) ? (+item.value).toFixed(2) : null),
type: "line",
symbol: "circle",
symbolSize: 6,

View File

@ -84,7 +84,7 @@ function getOptions(source, period, trend) {
if (trend[source].length == 0) return null;
return {
color: ["#FFD160", "#12FFF5", "#2760FF"],
grid: { top: 38, right: 12, bottom: 20, left: 48 },
grid: { top: 40, right: 12, bottom: 20, left: 56 },
xAxis: {
type: "category",
// data: Array(7)
@ -111,17 +111,17 @@ function getOptions(source, period, trend) {
},
},
yAxis: {
name: "单位m³/h",
name: "单位mg/m³",
nameTextStyle: {
color: "#fff",
fontSize: 10,
fontSize: 12,
align: "right",
},
type: "value",
axisLabel: {
color: "#fff",
fontSize: 12,
formatter: "{value} %",
formatter: "{value}",
},
axisLine: {
show: true,
@ -140,7 +140,11 @@ function getOptions(source, period, trend) {
},
series: [
{
data: trend[source].map((item) => item.value),
data: trend[source].map((item) =>
!(item.value == null || isNaN(+item.value))
? (+item.value).toFixed(2)
: null
),
type: "line",
symbol: "circle",
symbolSize: 6,

View File

@ -19,27 +19,29 @@ function SmokeHandle(props) {
</span>
<span
className={cls.shadowBorder + " " + cls.infoText}
style={{ letterSpacing: "12px" }}
style={{ letterSpacing: "2px" }}
>
<span style={{ lineHeight: 1.5 }}> </span>{" "}
<span style={{ lineHeight: 1.5 }}>{smokeInfo?.O2_float || 0}%</span>
</span>
<span className={cls.shadowBorder + " " + cls.infoText}>
<span style={{ lineHeight: 1.5 }}> </span>{" "}
<span style={{ lineHeight: 1.5 }}>氧气含量 %</span>
<span style={{ lineHeight: 1.5 }}>
{smokeInfo?.NOX_float || 0}mg/
{(+smokeInfo?.O2_float)?.toFixed(2) || 0}
</span>
</span>
<span className={cls.shadowBorder + " " + cls.infoText}>
<span style={{ lineHeight: 1.5 }}> </span>{" "}
<span style={{ lineHeight: 1.5 }}>氮氧化物浓度 mg/</span>
<span style={{ lineHeight: 1.5 }}>
{smokeInfo?.SO2_float || 0}mg/
{(+smokeInfo?.NOX_float)?.toFixed(2) || 0}
</span>
</span>
<span className={cls.shadowBorder + " " + cls.infoText}>
<span style={{ lineHeight: 1.5 }}> </span>{" "}
<span style={{ lineHeight: 1.5 }}>二氧化硫浓度 mg/</span>
<span style={{ lineHeight: 1.5 }}>
{smokeInfo?.dust_float || 0}mg/
{(+smokeInfo?.SO2_float)?.toFixed(2) || 0}
</span>
</span>
<span className={cls.shadowBorder + " " + cls.infoText}>
<span style={{ lineHeight: 1.5 }}>颗粒物浓度 mg/</span>
<span style={{ lineHeight: 1.5 }}>
{(+smokeInfo?.dust_float)?.toFixed(2) || 0}
</span>
</span>
</div>

View File

@ -29,7 +29,7 @@ export function getOptions(period, source, trend, options={}) {
"#8cd26d",
"#2aa1ff",
],
grid: { top: 32, right: 12, bottom: 56, left: 48 },
grid: { top: 32, right: 12, bottom: 56, left: 56 },
xAxis: {
type: "category",
data: