2011-10-23 12 views
5

Lütfen düşünün:işleyin: Boşluk ve Arka Plan

Manipulate[Rasterize[Graphics[{ 
    Black, Rectangle[{0, 0}, {6, 10}], 
    Red, Rectangle[{0, 0}, {2, L}], 
    Green, Rectangle[{2, 0}, {4, M}], 
    Blue, Rectangle[{4, 0}, {6, S}]}, 
    ImageSize -> {200, 270}, 
    ImageSize -> 50]], 
    [email protected]{{L, 1, Style["L", Red, Bold, 24]}, Range[10], 
    ControlType -> Slider, ControlPlacement -> Top, 
    DefaultBaseStyle -> {Bold, 16, FontFamily -> "Helvetica"}, 
    Appearance -> "Labeled", ImageSize -> 200}, 
    [email protected]{{M, 1, Style["M", Green, Bold, 24]}, Range[10], 
    ControlType -> Slider, ControlPlacement -> Top, 
    DefaultBaseStyle -> {Bold, 16, FontFamily -> "Helvetica"}, 
    Appearance -> "Labeled", ImageSize -> 200}, 
    [email protected]{{S, 1, Style["S", Blue, Bold, 24]}, Range[10], 
    ControlType -> Slider, ControlPlacement -> Top, 
    DefaultBaseStyle -> {Bold, 16, FontFamily -> "Helvetica"}, 
    Appearance -> "Labeled", ImageSize -> 200}] 

enter image description here

  • Ben arka plan rengini değiştirebilirsiniz: Siyah yerine Beyaz örneğin. Sağ tarafta neden bu kadar boş alan var? Kaydırma boyutunu, yalnızca içerdiği grafiklerin tamamını kaplayan Manipulate genişliğiyle eşleştiremedim.

+0

Hmm .. Gri parçayı kontrol edebilirim, beyazı değil. – abcd

+0

@Yoda, İlgileniyorum! Nasıl ? Ve sağdaki yüzeysel alan için her şeyi yapabilir misin :-)? – 500

cevap

5

Eğer Manipulate yılında Paneled -> False, bu Graphics çevresinde boşluk küçülür ayarlarsanız. Kalan beyaz, Graphics[...] komutunda uygun şekilde ayarlanarak farklı bir arka plana sahip olacak şekilde kolayca ayarlanabilir. Manipulate için BaseStyle arka planını ayarlayarak dış paneli de stilleyebilirsiniz. İşte kod biraz değiştirilmiş bulunuyor: Benim önceki örnekte fark etmemişlerdi

Manipulate[ 
Graphics[{Black, Rectangle[{0, 0}, {6, 10}], Red, 
    Rectangle[{0, 0}, {2, L}], Green, Rectangle[{2, 0}, {4, M}], Blue, 
    Rectangle[{4, 0}, {6, S}]}, ImageSize -> {200, 300}, 
    Background -> LightOrange], 
[email protected]{{L, 1, Style["L", Red, Bold, 24]}, Range[10], 
    ControlType -> Slider, ImageSize -> Small, ControlPlacement -> Top, 
    DefaultBaseStyle -> {Bold, 16, FontFamily -> "Helvetica"}, 
    Appearance -> "Labeled"}, 
[email protected]{{M, 1, Style["M", Green, Bold, 24]}, Range[10], 
    ControlType -> Slider, ImageSize -> Small, ControlPlacement -> Top, 
    DefaultBaseStyle -> {Bold, 16, FontFamily -> "Helvetica"}, 
    Appearance -> "Labeled"}, 
[email protected]{{S, 1, Style["S", Blue, Bold, 24]}, Range[10], 
    ControlType -> Slider, ImageSize -> Small, ControlPlacement -> Top, 
    DefaultBaseStyle -> {Bold, 16, FontFamily -> "Helvetica"}, 
    Appearance -> "Labeled"}, BaseStyle -> {Background -> LightPurple}, 
    Paneled -> False, ImageMargins -> 10] 

enter image description here

etiketler hafifçe yukarıya doğru hareket ettiğini. Her durumda, belisarius'un ImageSize -> Small'u kullanma önerisi daha basittir, bu yüzden onu benimsedim.

+0

, bu nedenle Etiket'i daha fazla kompostu dikey hale getirmek için yan tarafta bulundurmanın bir yolu yok mu? Zaten Müthiş ... – 500

+0

'BaseStyle' seçeneği sistemimde çalışmıyor (Windows XP'de MMa 8.0.1 32 bit). –

+0

@ 500 Beyazı farklı bir renge dönüştürmenin bir yolunu buldum. Lütfen düzenlememe bakın. Sanırım 'ImageSize -> Small' belisarius 'kodundaki gibi' EtiketliSlider 'ile Etiketleri doğru bir şekilde yerleştirmekle uğraşmaktan daha kolaydır. – abcd

3

Sana ImageSize seçeneği gereksiz düşünüyorum:

Manipulate[ 
Graphics[{Black, Rectangle[{0, 0}, {6, 10}], Red, 
    Rectangle[{0, 0}, {2, L}], Green, Rectangle[{2, 0}, {4, M}], Blue, 
    Rectangle[{4, 0}, {6, S}]}, ImageSize -> {200, 300}], 

[email protected]{{L, 1, Style["L", Red, Bold, 24]}, Range[10], 
    ControlType -> Slider, ImageSize -> Small, ControlPlacement -> Top, 
    DefaultBaseStyle -> {Bold, 16, FontFamily -> "Helvetica"}, 
    Appearance -> "Labeled"}, 
[email protected]{{M, 1, Style["M", Green, Bold, 24]}, Range[10], 
    ControlType -> Slider, ImageSize -> Small, ControlPlacement -> Top, 
    DefaultBaseStyle -> {Bold, 16, FontFamily -> "Helvetica"}, 
    Appearance -> "Labeled"}, 
[email protected]{{S, 1, Style["S", Blue, Bold, 24]}, Range[10], 
    ControlType -> Slider, ImageSize -> Small, ControlPlacement -> Top, 
    DefaultBaseStyle -> {Bold, 16, FontFamily -> "Helvetica"}, 
    Appearance -> "Labeled"}] 

enter image description here

+0

Teşekkür ederim. Kaydırıcıyı etiketin kayma yüksekliğinde tutmadan sonuna kadar kaydırmayı umuyoruz :-) – 500

+0

@ 500 Sorun şu ki, "Etiketli" görünür numaradan büyük bir kutuyu sağ kenar boşluğuna kadar koyuyor ve yeniden boyutlandırmak için bir yolu yoktur. –