plot - 在 SAS 中绘制一维点图
问题描述
你好,我想绘制一些接近这个的东西,但我似乎无法得到它。
我有数据
data table2_1;
input Modified_Mortar Unmodifided_Mortar;
cards;
16.85 16.62
16.40 16.75
17.21 17.37
16.35 17.12
16.52 16.98
17.04 16.87
16.96 17.34
17.15 17.02
16.59 17.08
16.57 17.27
;
run;
我试过了
proc freq data=table2_1;
tables Modified_Mortar / plots=freqplot (type=dotplot);
tables Unmodifided_Mortar / plots=freqplot (type=dotplot);
run;
但它给了我一个不必要的大图,它间隔相等,无法按我的意图比较两个分布。
解决方案
我玩了一下,sgplot
这是我能想到的最接近的。这并不准确,但在图像编辑器中稍微摆弄一下,您几乎可以得到它。
data table2_1;
input Modified_Mortar Unmodifided_Mortar;
retain mod_line 0.75 unmod_line 0;
cards;
16.85 16.62
16.40 16.75
17.21 17.37
16.35 17.12
16.52 16.98
17.04 16.87
16.96 17.34
17.15 17.02
16.59 17.08
16.57 17.27
;
run;
proc sgplot data=table2_1;
label Modified_Mortar = 'Strength (kgf/cm squared)';
scatter x = Modified_Mortar y=mod_line / markerattrs=(symbol=circlefilled color=black size=10);
scatter x = Unmodifided_Mortar y=unmod_line / markerattrs=(symbol=circlefilled color=bib size=10);
refline -0.25 / axis=y lineattrs=(color=bib thickness=2) name='mod' legendlabel='Unmodified' ;
refline 0.5 / axis=y lineattrs=(color=black thickness=2) name='unmod' legendlabel='Modified';
yaxis display=(nolabel) min=-0.25 max=15;
xaxis values=(16.24 to 17.50 by 0.14) min=16.30 max=17.40 valueattrs=(size=12) labelattrs=(size=12);
keylegend 'mod' 'unmod' / location=outside position=bottom valueattrs=(size=12);
run;
推荐阅读
- .net - 通常使函数调用超时(没有 Task/CancellationToken)
- reactjs - 如何动态改变material-ui的抽屉宽度?
- java - Java有时在读取文件时返回空字符串
- finance - *TradingView Pine* 止盈警报不起作用
- apache - 您可以将“/.html”的请求准确地重定向到 index.html 吗?
- java - 如何计算我的程序中的年差?
- traefik - Traefik - 重定向和斜杠
- maxima - 如何告诉 Maxima 使用更多内存?
- python - python scipy内置函数ODEINT使用不同的时间点集(参数t)
- python - 在熊猫中按日期对前 n 个值进行分组