Set tick label offsets better
This commit is contained in:
@@ -194,9 +194,15 @@ ternaryGraph scale xOffset yOffset definition textDimensions = result
|
||||
Maybe.Just dim -> Either.Right $ svgText definition.axis3Label (transform scale xOffset yOffset axis3TitlePos) (pi / 3.0) definition.axisTitleTextStyle dim
|
||||
]
|
||||
|
||||
axisTickStarts = map (\line -> line.start)
|
||||
-- svgText :: String -> Point -> Number -> TextStyle -> Dimension -> XMLFragment
|
||||
-- svgText text { x: x, y: y } angle style dimension =
|
||||
tickLength = 5.0
|
||||
-- TODO: Base this off of label dimensions / orientation
|
||||
labelSpacing = 5.0
|
||||
axis1Offset = {x: 0.0, y: tickLength + labelSpacing}
|
||||
axis2Offset = rotate (2.0 * pi / 3.0) axis1Offset
|
||||
axis3Offset = rotate (-2.0 * pi / 3.0) axis1Offset
|
||||
axis1TickStarts = map (\line -> line.start + axis1Offset)
|
||||
axis2TickStarts = map (\line -> line.start + axis2Offset)
|
||||
axis3TickStarts = map (\line -> line.start + axis3Offset)
|
||||
|
||||
axisTickLabels = \rotation startI -> Array.mapWithIndex (\i point ->
|
||||
let text = ("E" <> (toString (Int.toNumber (i + startI))))
|
||||
@@ -208,9 +214,9 @@ ternaryGraph scale xOffset yOffset definition textDimensions = result
|
||||
)
|
||||
|
||||
axis1TickLabels :: Array (Either.Either String XMLFragment)
|
||||
axis1TickLabels = axisTickLabels 0.0 definition.axis1Start $ axisTickStarts axis1TickLines
|
||||
axis2TickLabels = axisTickLabels 0.0 definition.axis2Start $ axisTickStarts axis2TickLines
|
||||
axis3TickLabels = axisTickLabels 0.0 definition.axis3Start $ axisTickStarts axis3TickLines
|
||||
axis1TickLabels = axisTickLabels 0.0 definition.axis1Start $ axis1TickStarts axis1TickLines
|
||||
axis2TickLabels = axisTickLabels 0.0 definition.axis2Start $ axis2TickStarts axis2TickLines
|
||||
axis3TickLabels = axisTickLabels 0.0 definition.axis3Start $ axis3TickStarts axis3TickLines
|
||||
|
||||
labelFragmentsErr = Array.concat [axisTitlesSvg, axis1TickLabels, axis2TickLabels, axis3TickLabels]
|
||||
|
||||
|
||||
Reference in New Issue
Block a user