How to create a graph with X, Y + Contour Axes.
3 次查看(过去 30 天)
显示 更早的评论
Hello, I need some guidance for creating a very similar chart shown below in the link.
For each axis, including the contoured one, I also have some data between 0-1 (actally % values) of corresponding type and I am supposed to show them in a single chart. I am not sure about how to combine those different values into one. If someone can offer some guidance with key functions, I would be greatly faithful.
Thanks in advance.
0 个评论
采纳的回答
the cyclist
2012-2-20
Here is a simple example, which I hope you can bend to your needs. I adapted it from the documentation here: http://www.mathworks.com/help/techdoc/ref/contour.html. I think it illustrates most of what you want, including how to overlay multiple plots (with the hold command), adding labels to the contours, etc. There are help files for all the different functions I used, of course.
figure
hold on
[X,Y] = meshgrid(-2:.2:2,-2:.2:3);
Z = X.*exp(-X.^2-Y.^2);
[C,h] = contour(X,Y,Z);
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2)
addedRandomX = rand(1,20);
addedRandomY = rand(1,20);
plot(addedRandomX, 1+addedRandomY,'kx')
plot(-addedRandomX,1+addedRandomY,'ro')
5 个评论
the cyclist
2012-2-26
The reason you got the mldivide error when calculating Z is that you were using the syntax for matrix division, where you actually wanted element-by-element division.
Try this instead:
figure
hold on
[X,Y] = meshgrid(-2:.2:2,-2:.2:3);
Z = 1./((1./(1-Y))+(1./X)-1);
[C,h] = contour(X,Y,Z)
Notice that I added "./" in place of just "/". The dots are the syntax for element-by-element operations.
I'm not sure if the result is what you expect, but at least it executes.
更多回答(1 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Distribution Plots 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!