这6个word2016画布图形对齐这么画对吗?求解谢谢

后使用快捷导航没有帐号?
查看: 10477|回复: 8
那个 请问x=a(t-sint) y=a(1-cost)这个图形怎么画啊 给个解释 谢谢
一般战友, 积分 252, 距离下一级还需 248 积分
在线时间107 小时
主题帖子积分
一般战友, 积分 252, 距离下一级还需 248 积分
一般战友, 积分 252, 距离下一级还需 248 积分
那个 请问x=a(t-sint) y=a(1-cost)这个图形怎么画啊 给个解释 谢谢
一般战友, 积分 259, 距离下一级还需 241 积分
在线时间187 小时
主题帖子积分
一般战友, 积分 259, 距离下一级还需 241 积分
一般战友, 积分 259, 距离下一级还需 241 积分
参见参数函数求导。
资深会员, 积分 19349, 距离下一级还需 10651 积分
K币13181 元
在线时间688 小时
主题帖子积分
资深会员, 积分 19349, 距离下一级还需 10651 积分
资深会员, 积分 19349, 距离下一级还需 10651 积分
K币13181 元
可以把sint和cost利用(sint)^2+(cost)^2=1约去t,可以求出y和x的关系。。应试可以画出来。。
一般战友, 积分 411, 距离下一级还需 89 积分
在线时间52 小时
主题帖子积分
一般战友, 积分 411, 距离下一级还需 89 积分
一般战友, 积分 411, 距离下一级还需 89 积分
这么典型的呢不会画?回家耕田去吧
中级战友, 积分 643, 距离下一级还需 2357 积分
在线时间272 小时
主题帖子积分
中级战友, 积分 643, 距离下一级还需 2357 积分
中级战友, 积分 643, 距离下一级还需 2357 积分
回复 楼主 薇薇水果糖 的帖子
见400T中第十套解答
在线时间103 小时
头像被屏蔽
主题帖子积分
提示: 作者被禁止或删除 内容自动屏蔽
一般战友, 积分 377, 距离下一级还需 123 积分
在线时间241 小时
主题帖子积分
一般战友, 积分 377, 距离下一级还需 123 积分
一般战友, 积分 377, 距离下一级还需 123 积分
我种田去了
一般战友, 积分 430, 距离下一级还需 70 积分
在线时间104 小时
主题帖子积分
一般战友, 积分 430, 距离下一级还需 70 积分
一般战友, 积分 430, 距离下一级还需 70 积分
就是(0.0),到(2a.0),挂个弧就行了,基本上就是个抛物线的样子,然后往后就是周期函数了。
一般战友, 积分 868, 距离下一级还需 -368 积分
在线时间297 小时
主题帖子积分
一般战友, 积分 868, 距离下一级还需 -368 积分
一般战友, 积分 868, 距离下一级还需 -368 积分
谁有田的?分我一块
您还剩5次免费下载资料的机会哦~
扫描二维码下载资料
使用手机端考研帮,进入扫一扫在“我”中打开扫一扫,扫描二维码下载资料
Powered by Discuz!苹果/安卓/wp
积分 756, 距离下一级还需 44 积分
权限: 自定义头衔, 签名中使用图片
道具: 彩虹炫, 涂鸦板, 雷达卡, 热点灯, 金钱卡, 显身卡, 匿名卡, 抢沙发下一级可获得
权限: 隐身
购买后可立即获得
权限: 隐身
道具: 金钱卡, 彩虹炫, 雷达卡, 热点灯, 涂鸦板
本帖最后由 caibirdcnb 于
18:56 编辑
各位高手,请问如何根据上边的数据生成下边的图形,想把GRADE1/2/3放在同一个轴上叠加起来,而不是分成3个柱子。
非常感谢!
18:47:03 上传
18:47:02 上传
我求助前也看了SAS的帮助文档,但似乎只有数据格式如下表的时候才能实现上图。而这样的整合的话,我的数据就太长了,300多W个观测,有3个GRADE,总共就要变成900多W个了。
18:47:09 上传
其实,我的原始数据是以下格式,我增加了3个列分别叫GRADE1/2/3,例如,如果是G1,那么GRADE1的数值就等于1,否则等于0,然后再按照Date进行summary,就得到最上面的表格了。
根据下面这个数据格式,又如何实现上面的图形呢?非常感谢!
18:47:10 上传
载入中......
应该没有很直接的方法,以下的方法供参考
本帖被以下文库推荐
& |主题: 257, 订阅: 16
有没有高手能指点一下。非常感谢!
&&input date: yymmdd. @;
&&do grade = 'G1','G2','G3';
& & input value @@;
& &
&&
&&format date yymmdds10.;
0.24 0.43 0.17
0.06 0.50 0.20
0.02 0.04 0.19
0.14 0.27 0.15
0.18 0.21 0.15
0.28 0.28 0.14
0.32 0.39 0.06
0.03 0.39 0.09
0.02 0.25 0.12
0.07 0.28 0.09
;
proc sgplot data=
vbar date/response=value group=grade transparency=0.3;
xaxis display=(nolabel);
yaxis grid values=(0 to 0.9 by 0.1) display=(nolabel);
keylegend/position=
format date mmddyy4.;
复制代码
观点有启发
总评分:&学术水平 + 3&
热心指数 + 2&
信用等级 + 1&
guoluo,非常感谢!It works。
我是新手,所以还有很多问题要请教:
1. SAS生成的图片如何指定保存位置和格式?我目前只能在results窗口查看。谢谢!
2. 假设我有3W(实际中有300W)个高斯分布的0-30的数据,我想生成以下图形,请问用SAS如何实现?谢谢!
左轴是1个分布函数,右轴是概率密度。当然我分组比较小,理想情况是分为几十到上百组,这样曲线比较平滑。
23:33:39 上传
我初步的想法是先bin为几十组到几百组数据,然后计算每个组有多少数量,再通过公式计算累积的百分比,如下表所示。
但我怀疑SAS说不定就自带函数可以一句话就实现。如果SAS没有自带函数,麻烦您给说个思路,我根据你的思路试着编写出来,遇到疑问再继续向您请教。谢谢了!
23:31:21 上传
漏了1个,如果在右轴加上数量的折线图,应该如何实现呢?我试着先根据日期汇总数量,然后把每个数量放到G1/G2/G3上面去,然后再SGPLOT下面再增加SERIES X = Y =,但总是出错。谢谢!
另外,我想系统地学习SAS,请问应该怎么学起呢?我目前的水平是只看过the little sas book,但基本的东西都掌握不熟悉,几乎都要查这本书或者【帮助】确认语法没错,但对数据集进行排序,重新组合,合并等相对熟悉一些。
有没有什么捷径能让我认真学3、4个月后能较为熟练地编写程序?
我不是统计行业的,所以我对SAS应用到的地方基本就是:整理数据;简单统计数据,基本极限于平均值,标准差等;画图,常用的有趋势图,X-Y图,CDF图,类似X-Y图的bin_X-Y图,等高线图等。一般情况下我用的是JMP,但是数据量太大了,经常几百W个观测,几十列的表,而且数据源就是SAS数据集。所以熟悉SAS对工作会很有帮助。
应该没有很直接的方法,以下的方法供参考
&&do i = 1 to 30000;
& & x = 15 + 4*rannor(12345);
& &
&&
proc univariate data=
&&histogram x /outhistogram= temp midpoints=0 to 30 by 0.5;
&&
&&density = _OBSPCT_/100;
&&prob + _OBSPCT_/100;
&&n = density * 30000;
ods graphics on/imagefmt=jpg imagename='test'; /*in current fodler*/;
*ods rtf file=&c:\test.rtf&;
proc sgplot data=
&&series x = _MIDPT_ y = prob/name='a' legendlabel='CDF';
&&series x = _MIDPT_ y = n/y2axis name='b' legendlabel='distribution';
&&xaxis display=(nolabel);
&&yaxis display=(nolabel) values=(0 to 1.1 by 0.1)
&&y2axis display=(nolabel);
&&keylegend 'a' 'b'/position=
总评分:&经验 + 3&
论坛币 + 3&
guoluo,非常感谢你一直以来的耐心。
我根据你的思路写了一个画CDF的MACRO,不过我遇到一个致命的问题:如下面图片所示,CDF曲线是红色和蓝色,两条概率密度曲线应该也是相应颜色(浅红和浅蓝),所以我必须手动指定颜色。在下面这行代码中,我如果使用color =这个选项,1个Y轴只能指定1个颜色,也就是说,最终两条CDF曲线变成一种颜色,两条概率密度曲线变成另外一种颜色,而这并不能区分UP/DOWN。并且数据有时有很多组,所以我需要1个坐标轴指定多种颜色:红,蓝,绿,黄,紫;另1个坐标轴是浅红,浅蓝,浅绿,浅黄,浅紫。请问有办法实现吗?非常感谢!
series x = &_x y = cdf / group = &_by lineattrs = (pattern = solid thickness = 2 color =);
另外请教一下如何指定生成图片的大小,图片标题和各坐标轴标题字体的大小和样式。
(图片太大,放到PPT上要缩放,而且缩小的话,字体看起来太小了)
还有我想在图片空白的角落添加几行字,请问有什么方法可以实现,类似:
“U: ss = 1465546, mean = 4645, std = 456&
“D: ss = 1678546, mean = 8985, std = 234&
下面是我写的代码,见笑了。
libname temp &H:\SAS&;
%CDF (_in = temp.test, _x = DATA, _by = UP_DOWN, _maverick_min = 0.05, _maverick_max = 0.25, _out =, _missing = -10);
%macro CDF (_in =, _x =, _by =, _maverick_min =, _maverick_max =, _out =, _missing =);
data _data_
& & & & set &_in (keep = &_x &_by);
& & & & if &_x = . then &_x = &_
& & & & else &_x = &_x;
data _temp_no_
& & & & set _data_
& & & & where &_x &= &_maverick_max and &_x &= &_maverick_
%mmmmss (_in = _temp_no_maverick, _var = &_x);
%axis_scale (var_mean = &_mean, var_std = &_std, var_min = &_min, var_max = &_max, scale_type = 'b');
data _temp_
& & & & set _data_
& & & & bin = round(&_x, &_bin_step);
proc report data = _temp_bin out = _temp_bin_sum (drop = _BREAK_ rename=(N = count))
& & & & column &_by bin N;
& & & & define &_by&&/
& & & & define bin /
& & & &
proc sort data = _temp_bin_
by &_
proc report data = _temp_bin_sum out = _temp_qty (drop = _BREAK_ rename=(count = input))
& & & & column &_by count,
& & & & define &_by /
& & & &
data _data_sum (rename = (bin = &_x));
merge _temp_bin_sum _temp_
by &_
& & & & per = 100 * count /
& & & & if &_by = lag1(&_by) then cdf +
& & & & & & & & else cdf =
%mmmmss (_in = _temp_no_maverick, _var = &_x);
%axis_scale (var_mean = &_mean, var_std = &_std, var_min = &_min, var_max = &_max, scale_type = 'x');
%mmmmss (_in = _data_sum, _var = count);
%axis_scale (var_mean = &_mean, var_std = &_std, var_min = &_min, var_max = &_max, scale_type = 'y2');
proc sgplot data = _data_
& & & & series x = &_x y = cdf / group = &_by lineattrs = (pattern = solid thickness = 2);
& & & & series x = &_x y = count / y2axis group = &_by lineattrs = (pattern = solid thickness = 1);
& & & & xaxis label = '&_x' grid values = (&_axis_x_min to &_axis_x_max by &_axis_x_step);
& & & & yaxis label = 'Cumulative Distribution(%)' grid values = (0 to 100 by 10);
& & & & y2axis label = 'Distribution(N)' grid values = (0 to &_axis_y2_max by &_axis_y2_step);& & & &
& & & & title &&_x CDF Plot by &_by&;
proc datasets library=
& & & & delete&&_temp_no_maverick _stat _temp_bin _temp_bin_sum _temp_qty _data_raw _data_
%mend CDF;
*mmmmss stands for mean m
%macro mmmmss(_in =, _var =);
%global _mean _median _min _max _std _
proc means data = &_
& & & & var &_
& & & & output out=_stat
& & & & & & & & mean = _mean
& & & & & & & & median = _median
& & & & & & & & min = _min
& & & & & & & & max = _max
& & & & & & & & std = _std
& & & & & & & & n = _
data _null_;
& &set _
& &call symput('_mean', _mean);
& &call symput('_median', _median);
& &call symput('_min', _min);
& &call symput('_max', _max);
& &call symput('_std', _std);
& &call symput('_ss', _ss);
*bin the data and calc
%macro axis_scale (var_mean =, var_std =, var_min =, var_max =, scale_type =);
%global _axis_x_min _axis_x_max _axis_x_step _axis_x2_min _axis_x2_max _axis_x2_step
& & & & & & & & & & & & & & & & _axis_y_min _axis_y_max _axis_y_step _axis_y2_min _axis_y2_max _axis_y2_step
& & & & & & & & & & & & & & & & _bin_
data _null_;
& & & & if &scale_type = 'b' then
& & & & & & & &
& & & & & & & & & & & & axis_min = &var_mean - 3 * &var_
& & & & & & & & & & & & if axis_min & 0 then
& & & & & & & & & & & & & & & &
& & & & & & & & & & & & & & & & & & & & axis_min = abs (axis_min);
& & & & & & & & & & & & & & & & & & & & axis_min = round (axis_min, 10 ** floor (log10 (axis_min)));
& & & & & & & & & & & & & & & & & & & & axis_min = 0 - axis_
& & & & & & & & & & & & & & & &
& & & & & & & & & & & & else axis_min = round (axis_min, 10 ** floor (log10 (axis_min)));
& & & & & & & & & & & & axis_max = &var_mean + 3 * &var_
& & & & & & & & & & & & if axis_max & 0 then
& & & & & & & & & & & & & & & &
& & & & & & & & & & & & & & & & & & & & axis_max = abs (axis_max);
& & & & & & & & & & & & & & & & & & & & axis_max = round (axis_max, 10 ** floor (log10 (axis_max)));
& & & & & & & & & & & & & & & & & & & & axis_max = 0 - axis_
& & & & & & & & & & & & & & & &
& & & & & & & & & & & & else axis_max = round (axis_max, 10 ** floor (log10 (axis_max)));
& & & & & & & & & & & & axis_step = (axis_max - axis_min) / 50;
& & & & & & & & & & & & axis_step = round (axis_step, 10 ** floor (log10 (axis_step)));
& & & & & & & & & & & & call symput('_bin_step', axis_step);
& & & & & & & &
& & & & else if &scale_type = 'x' then
& & & & & & & &
& & & & & & & & & & & & axis_min = &var_mean - 3 * &var_
& & & & & & & & & & & & if axis_min & 0 then
& & & & & & & & & & & & & & & &
& & & & & & & & & & & & & & & & & & & & axis_min = abs (axis_min);
& & & & & & & & & & & & & & & & & & & & axis_min = round (axis_min, 10 ** (floor (log10 (axis_min)) - 1));
& & & & & & & & & & & & & & & & & & & & axis_min = 0 - axis_
& & & & & & & & & & & & & & & &
& & & & & & & & & & & & else axis_min = round (axis_min, 10 ** (floor (log10 (axis_min)) - 1));
& & & & & & & & & & & & axis_max = &var_mean + 3 * &var_
& & & & & & & & & & & & if axis_max & 0 then
& & & & & & & & & & & & & & & &
& & & & & & & & & & & & & & & & & & & & axis_max = abs (axis_max);
& & & & & & & & & & & & & & & & & & & & axis_max = round (axis_max, 10 ** (floor (log10 (axis_max)) - 1));
& & & & & & & & & & & & & & & & & & & & axis_max = 0 - axis_
& & & & & & & & & & & & & & & &
& & & & & & & & & & & & else axis_max = round (axis_max, 10 ** (floor (log10 (axis_max)) - 1));
& & & & & & & & & & & & axis_step = (axis_max - axis_min) / 10;
& & & & & & & & & & & & axis_step = round (axis_step, 10 ** floor (log10 (axis_step)));
& & & & & & & & & & & & call symput('_axis_x_min', axis_min);
& & & & & & & & & & & & call symput('_axis_x_max', axis_max);
& & & & & & & & & & & & call symput('_axis_x_step', axis_step);
& & & & & & & &
& & & & else if &scale_type = 'y2' then
& & & & & & & &
& & & & & & & & & & & & axis_min = 0;
& & & & & & & & & & & & axis_max = &var_max * 1.1;
& & & & & & & & & & & & axis_max = round (axis_max, 10 ** floor (log10 (axis_max)));
& & & & & & & & & & & & axis_step = axis_max / 10;
& & & & & & & & & & & & call symput('_axis_y2_min', axis_min);
& & & & & & & & & & & & call symput('_axis_y2_max', axis_max);
& & & & & & & & & & & & call symput('_axis_y2_step', axis_step);
& & & & & & & &
%mend axis_复制代码
20:59:33 上传
1. lineattrs = (pattern = solid thickness = 2 color =red);
lineattrs = (pattern = solid thickness = 2 color =blue);
lineattrs = (pattern = solid thickness = 2 color =geen);
lineattrs = (pattern = solid thickness = 2 color =yellow);
/* proc registry list startat=&COLORNAMES&; */
2. ods graphics on/width=10in height=7in imagefmt=jpg imagename='test';
3. proc sgplot ... inset &U: ss = 1465546, mean = 4645, std = 456&/noborder position=
非常感谢!但很不幸问题还是存在,请继续多多指教啊。
我的疑难在于:series x = aa y = bb / group = cc lineattrs = 这个语句中,lineattrs只能指定1种颜色,然而,由于group的存在,该语句产生了2条或者更多的线,显然,多条线仅指定一种颜色是不够的。谢谢!
我这几天仔细查阅了帮助,似乎有一种办法可以解决这个问题,但由于编程语法不熟悉,暂时还不知道怎么实现。
我的办法是:
1. 通过帮助知道系统默认的样式是style.default。
2. 通过帮助知道style.default中,这种group的系列线,颜色是由样式GraphData1-12里面的ContrastColor属性决定的。For grouped data, the default color is specified by the ContrastColor attribute of the GraphData1 ... GraphDatan style elements in the current style.3. 通过下面查询语句逐步追踪,可知GraphData1-12的颜色是由'gcdata1'-'gcdata12'指定的,而'gcdata1'-'gcdata12'的具体值是12种RGB颜色。
实际使用表明,假设有4个组,则第一句series x = aa y = bb / group = cc使用的是'gcdata1'-'gcdata4'的颜色,而第二句series x = aa y = bb / group = cc y2axis使用的是'gcdata5'-'gcdata8'的颜色,依次类推。
& & source Styles.D
& &复制代码4. 基于上面的背景,我使用下面代码可以更改让GraphData1对应'gcdata5'而不是原来的'gcdata1',这样相当于我能指定颜色了。或者,我也可以直接更改'gcdata1'的RGB颜色。
& & define style nbCDFL;
& & parent=Styles.D
& & style Graph from Graph /& &
& & OutputWidth = 7in
& & OutputHeight = 4.5
& & 。。。更多语句。。。
复制代码例1,如果我的组数有6组,则我可以通过上面代码(具体代码需要参考source Styles.Default)指定如下图的颜色,这样我只要在作图之前通过ods listing style = nbCDFL之类的语句就可以得到需要的颜色。
21:00:41 上传
例2,如果我的组数是3组,则我必须重新定义上图的颜色代码如下图(1和4,2和5,3和6)。
21:00:45 上传
5. 所以,我现在的难题在于组数不固定,所以gcdata1-12需要根据实际组数情况指定颜色。
我猜测可以通过类似下面的程序来指定gcdatan所对应的颜色,但是不知道怎么批量定义1批全局变量global.i。
data _null_;
& & & & array c1; /*(具体指定上图左边6种颜色的RGB代码)*/
& & & & array c2; /*(具体指定上图右边6种颜色的RGB代码)*/
& & & & group = 3; /*假设这是组数*/
& & & &
& && & & & do i= 1 /*如果先初始化上面图表的12种颜色,则gcdata1至gcdata3不用指定,指定gcdata4-6即可*/
& && & & & & & & & global.i = c1{i};
& & & &
& && & & & do i= group + 1 to group +
& && & & & & & & & global.i = c2{i-group};
& & & &
& & & & *运行完上面程序global.1-global.7就是所需要的颜色
& & & &&&然后再把global.1-7赋予proc template过程里面的class或者style语句即可;复制代码
%let _gcdata_L1 =r11 r12 r13 r14 r15 r16;
%let _gcdata_L2 =r21 r22 r23 r24 r25 r26;
%let _group =3;
%macro colorL& & & &
& & & & %do i =1 %to &_
& & & & & & & & &gcdata&i& =%scan(&_gcdata_L1, &i)
& & & & & & & & &gcdata%eval(&i +&_group)& =%scan(&_gcdata_L2, &i)
& & & & %;
%mend colorL
& &define style styles.ChangedC
& &parent=styles.
& &style graphcolors from graphcolors /
& & %colorL
& &
复制代码很好的讨论。我猜想你最后的需要只是要通过macro产生改变color style所需要的文本而已。
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
如有投资本站或合作意向,请联系(010-);
邮箱:service@pinggu.org
投诉或不良信息处理:(010-)
论坛法律顾问:王进律师请教,华为荣耀6plus在微信朋友圈所有的图片现在不能显示画面了,是怎么回事,如何解决?谢谢!
按时间排序
检查自己的手机ROM空间是否不足,垃圾是否过多。另外也有可能是网络问题造成的。
您可以邀请优质答主更快回答您的问题
新手上路2000
擅长领域:&&
在电脑应用分类下共有9663个回答
擅长领域:&&&&
在电脑应用分类下共有7525个回答
擅长领域:&&
在电脑应用分类下共有1814个回答
擅长领域:&&
在电脑应用分类下共有1699个回答
擅长领域:&&&&
在电脑应用分类下共有1548个回答
擅长领域:
在电脑应用分类下共有1323个回答
加载更多答主
感谢您为社区的和谐贡献力量请选择举报类型
经过核实后将会做出处理感谢您为社区和谐做出贡献
确定要取消此次报名,退出该活动?}

我要回帖

更多关于 ps怎么画图形 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信