{#if processedData().data.length > 1} {@const { data, categories, maxValue } = processedData()} 每日支出趋势 {descriptionText()} chartType = 'area'} title="堆叠面积图" > chartType = 'line'} title="线性图" > {timeRangeOptions.find(o => o.value === timeRange)?.label} {#each timeRangeOptions as option} {option.label} {/each} {#if chartType === 'area'} {#each categories as category, i} {@const isHidden = hiddenCategories.has(category)} toggleCategory(category)} title={isHidden ? '点击显示' : '点击隐藏'} > {category} {/each} {:else} 总支出 {/if} handleMouseMove(e, data, maxValue)} onmouseleave={handleMouseLeave} onclick={(e) => handleClick(e, data, maxValue)} > {#each getYTicks(maxValue) as tick} {tick.label} {/each} {#each getXTicks(data) as tick} {tick.label} {/each} {#if chartType === 'area'} {#each [...categories].reverse() as category, i} {@const colorIdx = categories.length - 1 - i} {/each} {:else} {#each getTotalLinePoints(data, maxValue) as point} {/each} {/if} {#if tooltipData} {#each categories as category, i} {#if tooltipData[category] > 0} {/if} {/each} {/if} {#if tooltipData} {@const tooltipLeftPercent = (tooltipX / chartWidth) * 100} {@const adjustedLeft = tooltipLeftPercent > 75 ? tooltipLeftPercent - 25 : tooltipLeftPercent + 2} {tooltipData.label || tooltipData.date.toLocaleDateString('zh-CN')} {#each categories as category, i} {#if tooltipData[category] > 0} {category} ¥{tooltipData[category].toFixed(2)} {/if} {/each} 合计 ¥{tooltipData.total.toFixed(2)} {/if} {#if trendInfo()} {@const info = trendInfo()} {#if info!.change >= 0} +{Math.abs(info!.changePercent).toFixed(1)}% {:else} -{Math.abs(info!.changePercent).toFixed(1)}% {/if} 较前一天 {/if} 点击图表查看当日详情 {/if} {#if selectedDate} {selectedDate.toLocaleDateString('zh-CN', { year: 'numeric', month: 'long', day: 'numeric', weekday: 'long' })} {/if} {#if selectedDateStats} {@const stats = selectedDateStats} 共 {stats!.count} 笔支出,合计 ¥{stats!.total.toFixed(2)} {/if} {#if selectedDateStats} {@const stats = selectedDateStats} 分类汇总 {#each stats!.categories as cat, i} {cat.category} ({cat.count}笔) ¥{cat.amount.toFixed(2)} {/each} 详细记录 {:else} 暂无数据 {/if}
点击图表查看当日详情
暂无数据