fix(tradein/v2): аналитика — выровнять два графика в равную высоту
All checks were successful
CI Trade-In / changes (pull_request) Successful in 9s
CI / changes (pull_request) Successful in 9s
CI Trade-In / backend-tests (pull_request) Has been skipped
CI / backend-tests (pull_request) Has been skipped
CI / frontend-tests (pull_request) Has been skipped
CI / openapi-codegen-check (pull_request) Has been skipped
CI Trade-In / frontend-checks (pull_request) Successful in 1m6s

История цен (viewBox 220) и Цена × срок продажи (viewBox 300) в 2-колоночной
сетке (#2480) рендерились разной высоты (~188px / ~263px) — короткий график
читался как обрезанный. Ставим оба SVG на одинаковую height: 260px
(preserveAspectRatio="none" уже растягивает содержимое) + align-items: stretch
на грид-контейнере, чтобы карточки визуально совпадали по высоте. viewBox и
логика отрисовки/осей не тронуты.
This commit is contained in:
bot-backend 2026-07-12 18:14:39 +03:00
parent 338ccbb78f
commit c641d75f0b

View file

@ -329,13 +329,15 @@ export default function AnalyticsView({
{/* история цен + цена × срок продажи side by side so both fit the {/* история цен + цена × срок продажи side by side so both fit the
fixed-height v2 artboard panel without scrolling (reclaims ~194px fixed-height v2 artboard panel without scrolling (reclaims ~194px
of vertical space vs. stacking; chart heights unchanged). */} of vertical space vs. stacking). Both SVGs share height: 260 (viewBox
heights differ 220 vs 300 but preserveAspectRatio="none" stretches
them to match) so the two cards render at equal height. */}
<div <div
style={{ style={{
display: "grid", display: "grid",
gridTemplateColumns: "1fr 1fr", gridTemplateColumns: "1fr 1fr",
gap: 16, gap: 16,
alignItems: "start", alignItems: "stretch",
}} }}
> >
{/* история цен */} {/* история цен */}
@ -390,7 +392,7 @@ export default function AnalyticsView({
</div> </div>
<svg <svg
viewBox="0 0 900 220" viewBox="0 0 900 220"
style={{ width: "100%", height: 200, marginTop: 12 }} style={{ width: "100%", height: 260, marginTop: 12 }}
preserveAspectRatio="none" preserveAspectRatio="none"
role="img" role="img"
aria-label="График истории цен в этом доме: медиана ₽/м² по годам, серии Avito и Яндекс" aria-label="График истории цен в этом доме: медиана ₽/м² по годам, серии Avito и Яндекс"
@ -577,7 +579,7 @@ export default function AnalyticsView({
</div> </div>
<svg <svg
viewBox="0 0 900 300" viewBox="0 0 900 300"
style={{ width: "100%", height: 280, marginTop: 12 }} style={{ width: "100%", height: 260, marginTop: 12 }}
preserveAspectRatio="none" preserveAspectRatio="none"
role="img" role="img"
aria-label="Точечный график зависимости цены продажи от срока экспозиции: аналоги, сделки и ваш объект" aria-label="Точечный график зависимости цены продажи от срока экспозиции: аналоги, сделки и ваш объект"