Boxplot and Plot Overlay Problem

2 ビュー (過去 30 日間)
Ioannis
Ioannis 2023 年 3 月 28 日
回答済み: VBBV 2023 年 3 月 29 日
Hello, I am new to Matlab
I happen to want to plot a trendline over a boxplot (same graph, same X-axis and different Y-axis but the Y-values are on the same scale).
All the vectors (X(=year), Y1(=diox), Y2(=c)) are the same size:1x191 double.
diox are 191 different values which are assigned to a "year".
year are 191 values allthough there are many replicates (eg. the value 2005 appears 7 times etc.)
c are 191 values that correspond to the mean of each "year" for the "diox" which were created with a for-if loop - I thought that it would be easier to have the exact same X-axis which is "year".
When it runs, I get the boxplot but I don't get the plot (although I get the yyaxis right axis correct).
Any help would be appreciated!
figure;
xlim([2004 2022]); ylim([0 1.5])
yyaxis left
boxplot(diox,year);
hold on
ylabel('WHO-PCDD/F-TEQ/product')
yyaxis right
plot(c,year)
ylabel('Annual TEQ Means')
title(sprintf('Dioxins'))
hold off
  1 件のコメント
Adam Danz
Adam Danz 2023 年 3 月 28 日
It would be easier to troubleshoot if you attach the data.

サインインしてコメントする。

回答 (1 件)

VBBV
VBBV 2023 年 3 月 29 日
As you say, X, Y1 , Y2 are same size and since Y2 (c) is a vector with mean of each year, plot the graph using the unique values of the year against the X (year)
figure;
xlim([2004 2022]); ylim([0 1.5])
yyaxis left
boxplot(diox,year);
hold on
ylabel('WHO-PCDD/F-TEQ/product')
yyaxis right
% ------------------>>>
plot(c,unique(year)) % take the unique year values
ylabel('Annual TEQ Means')
title(sprintf('Dioxins'))
hold off
Also, when you say,
c are 191 values that correspond to the mean of each "year" for the "diox" which were created with a for-if loop
how do you get 191 values when you calculate mean for each year ?
Data for repetitve occurances of the same year are considered as one set, and mean of that data must yield a scalar
Could you show us how your for-loop code is built ? If possible attach your data as well.

製品


リリース

R2022b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by