         for (_, color, path) in curves {
             color.setStroke()
             let path = (chartTransform as NSAffineTransform).transform(path)
-            path.lineWidth = p.lineWidth
             path.lineCapStyle = .roundLineCapStyle
             path.lineJoinStyle = .roundLineJoinStyle
+            p.lineParams.apply(on: path)
             path.stroke()
         }
         if !presentationMode {

    }

    struct ViewParams {
        let backgroundColor: NSColor
        let titleFont: NSFont
        let titleColor: NSColor

            borderWidth: 0.5,
            highlightedBorderWidth: 4,
            majorGridlineColor: NSColor(white: 0.7, alpha: 1),
            majorGridlineParams: LineParams(lineWidth: 0.75),
            minorGridlineColor: NSColor(white: 0.7, alpha: 1),
            minorGridlineParams: LineParams(lineWidth: 0.5, dash: [6, 3]),
            scaleFont: NSFont(name: "Helvetica-Light", size: 24)!,
            legendFont: NSFont(name: "Menlo", size: 20)!,
            legendColor: NSColor.white,
            legendPadding: 8,
            lineParams: LineParams(lineWidth: 8),
            shadowRadius: 3,
            xPadding: 12)

        func lineParams(for kind: Gridline.Kind) -> (color: NSColor, params: LineParams) {
            switch kind {
            case .major:
                return (majorGridlineColor, majorGridlineParams)
            case .minor:
                return (minorGridlineColor, minorGridlineParams)
            }
        }
    }
