如何在matlab中为一些数据创建箱线图
How to create boxplot for some of data in matlab
我在 excel 中有两个专栏。我将它导入 matlab 并为它们创建箱线图。
我使用 boxplot
函数:
boxplot(BasePay,JobTitle)
现在我想为 JobTitle
的某些值创建箱线图,例如 JobTitle1
和 JobTitle2
。这些是我的数据:
Job Title Base Pay
JobTitle1 486927.08
JobTitle1 461785.8
JobTitle2 523782.43
JobTitle4 388849.77
JobTitle2 380452.08
JobTitle1 450053.76
JobTitle2 546416.52
JobTitle3 384411.2
JobTitle4 353637.71
JobTitle4 311209.74
JobTitle3 355242.48
JobTitle2 359855.85
我不确定你是如何保存这些数据的,但假设 JobTitle
的元胞数组和 BasePay
的向量,你可以这样写:
boxplot(BasePay(strcmp(JobTitle,'JobTitle1') | strcmp(JobTitle,'JobTitle2')));
如果您想查看多个箱线图,最好这样做:
grp = strcmp(JobTitle,'JobTitle1') | strcmp(JobTitle,'JobTitle2');
boxplot(BasePay,grp);
bp = gca;
bp.XTickLabel = {'all other','JobTitle1&2'};
或者,如果你只想绘制 JobTitle1
和 JobTitle2
但分开,你可以写:
boxplot(BasePay(grp),JobTitle(grp));
使用上面的 grp
变量,无需设置标签。
我在 excel 中有两个专栏。我将它导入 matlab 并为它们创建箱线图。
我使用 boxplot
函数:
boxplot(BasePay,JobTitle)
现在我想为 JobTitle
的某些值创建箱线图,例如 JobTitle1
和 JobTitle2
。这些是我的数据:
Job Title Base Pay
JobTitle1 486927.08
JobTitle1 461785.8
JobTitle2 523782.43
JobTitle4 388849.77
JobTitle2 380452.08
JobTitle1 450053.76
JobTitle2 546416.52
JobTitle3 384411.2
JobTitle4 353637.71
JobTitle4 311209.74
JobTitle3 355242.48
JobTitle2 359855.85
我不确定你是如何保存这些数据的,但假设 JobTitle
的元胞数组和 BasePay
的向量,你可以这样写:
boxplot(BasePay(strcmp(JobTitle,'JobTitle1') | strcmp(JobTitle,'JobTitle2')));
如果您想查看多个箱线图,最好这样做:
grp = strcmp(JobTitle,'JobTitle1') | strcmp(JobTitle,'JobTitle2');
boxplot(BasePay,grp);
bp = gca;
bp.XTickLabel = {'all other','JobTitle1&2'};
或者,如果你只想绘制 JobTitle1
和 JobTitle2
但分开,你可以写:
boxplot(BasePay(grp),JobTitle(grp));
使用上面的 grp
变量,无需设置标签。