Why do my model visualization and model estimates not match (R, ggplot)? I am studying the relationship between government fiscal balances (BAL) and bond yields (LTINT). I have a simple regression discontinuity model with a numerical variable (BAL), a dummy (SGP: breach/compliant) and dummy interaction variable (SGP*BAL) investigating additional yield penalties when the fiscal balance is at -3 percent of GDP lower (breach).
model1D <- lm(LTINT ~ BAL + SGP + SGP*BAL, data3)

With output:
Coefficients:
                 Estimate Std. Error t value Pr(>|t|)    
(Intercept)       -0.1898     0.7726  -0.246  0.80635    
BAL               -0.8505     0.1192  -7.137 9.79e-11 ***
SGPcompliant       1.4653     0.8284   1.769  0.07962 .  
BAL:SGPcompliant   0.6281     0.2150   2.922  0.00421 ** 

I have made a visualization of this model using ggplot and color = SGP:
  yieldplot1 <- ggplot(data3, aes(x = BAL, y = LTINT, color = SGP)) +
  geom_point(alpha = .8) +
  geom_smooth(method = "lm", formula = y ~ x, se = FALSE, size = 1.25)

However, while the plot seems to show a negative value for the dummy variable estimate(trendline to the right of -3 is positioned lower than the one on the left), the model estimates say otherwise: balances to the right -3 attract a yield increase. Why is this? Have I made a mistake in assuming that by using color = SGP (dummy) the graph represents a model with dummy and interaction dummy?

They do match. Assuming that $\texttt{SGPcompliant}$ is $0$ for "breach" and $1$ for "compliant", the model based equations for the red line is: $\widehat{\texttt{LTINT}}= -0.1898 - 0.8505\cdot\text{BAL}$. For the green line, the estimated equation is: $\widehat{\texttt{LTINT}}=(-0.1898 + 1.4653) + (-0.8505 + 0.6281)\cdot\text{BAL}$ or $\widehat{\texttt{LTINT}}=1.2755 - 0.2224\cdot\text{BAL}$.
The coefficients would be interpreted as follows:

*

*$\beta_0 = -0.1898$ is the intercept of the line when $\texttt{SGPcompliant}$ is $0$, because the term $\beta_2\cdot\texttt{SGPcompliant}$ is $0$.

*$\beta_1 = -0.8505$ is the slope of the line when $\texttt{SGPcompliant}$ is $0$, because the interaction term $\beta_3\cdot\texttt{BAL:SGPcompliant}$ is $0$.

*$\beta_2 = 1.4653$ is difference between the intercept of the line when $\texttt{SGPcompliant}$ is $0$ and the intercept of the line when $\texttt{SGPcompliant}$ is $1$. So the intercept in that case is $-0.1898 + 1.4653 = 1.2755$.

*$\beta_3 = 0.6281$ is difference between the slope of the line when $\texttt{SGPcompliant}$ is $0$ and the slope of the line when $\texttt{SGPcompliant}$ is $1$. So the slope in that case is $-0.8505 + 0.6281 = -0.2224$.

