簡體   English   中英

具有3d條和不同條顏色的雙變量直方圖

[英]Bivariate histogram plot with 3d bars AND different bar colors

histogram2函數(在R2015b中添加了)具有DisplayStyle可選參數,該參數控制使用“條”(顏色均勻但高度不同)還是“小塊”(高度相同0,但顏色不同)顯示輸出,如下所示:

rng(1337); X = rand(100,1)-0.5; Y = randn(100,1); rng('default');
figure(); 
subplot(1,2,1); hH(1) = histogram2(X, Y, 'DisplayStyle', 'bar3');
subplot(1,2,2); hH(2) = histogram2(X, Y, 'DisplayStyle', 'tile');

直方圖的兩種模式的演示

我想將兩種模式結合起來,以得到具有不同高度且顏色不同的條形圖。 如前所述,我嘗試使用'DisplayStyle'選項,但它同時更改了太多視覺元素。 有人可以建議一種獲得我想要的東西的方法嗎?

我非常希望解決方案是histogram2對象(與例如bar3 ),因為以后使用它們會更方便。

TL; DR:
 histogram2(X, Y, 'FaceColor', 'flat'); 

那些傾向於“蠻力”方法而不是通讀文檔的人可能會通過深度比較兩個結果對象( hH(1)hH(2) ),找到不同的屬性,然后嘗試從中分配期望的值來解決此問題。其他樣式。 確實,這些差異出現了:

  • FaceColor :分別在“藍色”和“平坦”圖表中的“ 'auto''flat'
  • FaceLighting :分別在“藍色”和“平坦”圖表中分別為'lit''none'

然后,幸運的是,以下代碼確實有效:

 hH(1).FaceColor = 'flat'; 

可在FaceColor文檔中找到此工作的原因:

直方圖條形顏色,指定為以下值之一:

'none' -....

'flat'條形顏色隨高度而變化。 不同高度的條具有不同的顏色。 顏色是從圖形或軸顏色圖中選擇的

'auto' -....

...較早閱讀可以節省一些時間。


這里要學習的教訓是:

當有大量可用的文檔1時 ,我們不應該只停在與出現問題有關的第一件事上,因為一個明顯的解決方案可能會顯得更底層。

1具有大多數MATLAB函數的情況,對於MATLAB的圖形對象尤其如此。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM