chengweifeng 发表于 2010-9-7 23:06:57

【请教】砂筛分曲线画法

本人通过附件中的程序拟得到类似附图3的图形,但是画出的图形(附图2)存在2处错误(附图2中的黑圈及红圈),不知如何解决,高手赐教!不胜感激!

qibbxxt 发表于 2010-9-8 09:23:33

本帖最后由 qibbxxt 于 2010-9-8 09:29 编辑

不知道你要怎么画图,你说的不清楚;我把你的代码改了一下,还是得不到你要的效果,不过你可以参考一下

为了节省篇幅,我没有写数据部分,你的程序中有,核心部分代码
clear;clc;close all
figure('color','y')
% plot(a,leiji,'ko','markersize',5);
hold on
plot(a,leiji_1shang,'k--','linewidth',2);
plot(a,leiji_2shang,'r-','linewidth',2);
plot(a,leiji_3shang,'b-.','linewidth',2);
plot(a,leiji_3xia,'b-.','linewidth',2);
plot(a,leiji_1xia,'k--','linewidth',2);
plot(a,leiji_2xia,'r-','linewidth',2);
% plot(a,averageleiji,'k--','linewidth',2);
axis()
set(gca,'xticklabel',{'0.16';'0.315';'0.63';'1.25';'2.5';'5';'10'});
set(gca,'ytick',0:20:100);
set(gca,'YDir','reverse','color','y');
grid on
set(gca,'GridLineStyle','-');
legend('1区','2区','3区');
hh=xlabel('筛孔尺寸(mm)','position',);
ylabel('累计筛余(%)');

lengyunfeng 发表于 2010-9-8 12:16:44

本帖最后由 lengyunfeng 于 2010-9-8 12:19 编辑

把q的代码又改了一下,如下:hold on
plot(a,fliplr(-1*leiji_1shang),'k--','linewidth',2);
plot(a,fliplr(-1*leiji_2shang),'r-','linewidth',2);
plot(a,fliplr(-1*leiji_3shang),'b-.','linewidth',2);
plot(a,fliplr(-1*leiji_3xia),'b-.','linewidth',2);
plot(a,fliplr(-1*leiji_1xia),'k--','linewidth',2);
plot(a,fliplr(-1*leiji_2xia),'r-','linewidth',2);
% plot(a,averageleiji,'k--','linewidth',2);
axis()
set(gca,'xticklabel',{'0.16';'0.315';'0.63';'1.25';'2.5';'5';'10'});
set(gca,'ytick',-100:20:0);
set(gca,'yticklabel',{'100';'80';'60';'40';'20';'0'});
grid on set(gca,'GridLineStyle','-');
legend('1区','2区','3区',0);
hh=xlabel('筛孔尺寸(mm)','position',);
ylabel('累计筛余(%)');得到的图形如下:

btw,土力学里的颗分曲线应该是半对数的,你想画成这个样子没什么问题吧?

lengyunfeng 发表于 2010-9-8 12:32:41

还有一个办法,如下:
function sievecurve
clear;clc;close all
a=fliplr(0:6);
leiji_1shang=;
leiji_1xia=;
leiji_2shang=;
leiji_2xia=;
leiji_3shang=;
leiji_3xia=;
hold on
axis ij
plot(a,leiji_1shang,'k--','linewidth',2);
plot(a,leiji_2shang,'r-','linewidth',2);
plot(a,leiji_3shang,'b-.','linewidth',2);
plot(a,leiji_3xia,'b-.','linewidth',2);
plot(a,leiji_1xia,'k--','linewidth',2);
plot(a,leiji_2xia,'r-','linewidth',2);
axis()
set(gca,'xticklabel',{'0.16';'0.315';'0.63';'1.25';'2.5';'5';'10'});
set(gca,'ytick',0:20:100);
grid on
set(gca,'GridLineStyle','-');
legend('1区','2区','3区',4);
hh=xlabel('筛孔尺寸(mm)');
ylabel('累计筛余(%)');
hold off
得到的图形如下:

和q的代码差在了第4行和第12行。

chengweifeng 发表于 2010-9-8 22:47:53

非常感谢qibbxxt 和lengyunfeng 的出手相助!
3#及4#正解!
页: [1]
查看完整版本: 【请教】砂筛分曲线画法