A problem in the usage of multidimensional scaling (cmdscale)
3 ビュー (過去 30 日間)
古いコメントを表示
Hello everyone.
I have some nodes in a cartesian coordinates that have a specific configuration.
I've used cmdscale(D) for creating a configuration based on euclidean distance matrix D.
Matrix D is based on the positions of my nodes.
My problem is that cmdscale does mirroring than the initial node configuration.
How can we cancel mirroring in cmdscale?
0 件のコメント
採用された回答
Jeff Miller
2023 年 2 月 7 日
You can't cancel that. With only the distance information in D, the mds function has no way of knowing what is up/down/left/right or north/south/east/west etc. The axes and directions that the algorithm produces are based on minor numerical quirks in D (that seem irrelevant to us).
For example, look at the map output in the first example on the cmdscale documentation page--north/south and east/west are both inverted relative to the real world locations of these cities as we usually display them on maps.
What you can do is to rescale the output coordinates Y that you get from cmdscale. For example, multiply by -1 along one dimension to reverse the picture with respect to that dimension.
0 件のコメント
その他の回答 (0 件)
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!