我正在尝试为我的公司可视化健康保险福利选项,以帮助其他人做出决定。我有一张这样的桌子:
| plan | ded | oop | exp_oop |
|------+------------+------+---------|
| a | 400 | 2100 | 17400 |
| b | 1300 | 2600 | 14300 |
| c | 2600 | 5200 | 28600 |
ded
= 免赔额;90% 共同保险的费用水平oop
= 最高金额exp_oop
oop
=达到的医疗费用金额
我想绘制员工的成本与产生的医疗费用。健康保险的工作范围...
cost = expenses for 0 < expenses < ded
cost = deductible + (0.10 x (expenses - ded)) for ded <= expenses < exp_oop
cost = oop for oop <= expenses <= infinity
我如何绘制每个范围?基本上,每个计划的免赔额都有一条斜率 = 1 的线,然后从 x = 免赔额到 x = oop 的斜率 = 0.1 的线,然后从 oop 向上的斜率 = 0 的线。
我不确定如何有条件地使用 ggplot2 进行绘图。如果您想使用上述内容,以下是这些截止值的可重现代码:
dat <- data.frame(plan = c("a", "b", "c"), ded = c(400, 1300, 2600), oop = c(2100, 2600, 5200), exp_oop = c(17400, 14300, 28600))
我必须自己创建 x/y 值吗?换句话说,像这样的中间表?
| plan | x | y |
|------+-------+------|
| 1 | 0 | 0 |
| 1 | 400 | 400 |
| 1 | 17400 | 2100 |
| 2 | 0 | 0 |
| 2 | 1300 | 1300 |
| 2 | 14300 | 2600 |
| 3 | 0 | 0 |
| 3 | 2600 | 2600 |
| 3 | 28600 | 5200 |
我正在为几个变体(仅限员工,员工+配偶等)这样做,所以如果我不需要为每个计划单独的数据表,但可以使用已经定义的免赔额和自付费用最大值,那就太好了我已经在数据框中拥有的值...
感谢您的任何建议!