Aynı Tab. İki veya daha fazla veriyi. tek DBChart da göster.
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Aynı Tab. İki veya daha fazla veriyi. tek DBChart da göster.
Slmlar
Bir tablede kişilerin DBChart a uyan sayısal verileri var.
(Aşağıda Fikir olarak yazıyorum)
Table deki alan adlarını bir checklistbox a aktarıp buradan birden fazla kayıtı seçili yaparak tek bir DBChart üzerinde yeni series oluşturarak bu seriesler üzerinde verileri gösterebilirmiyiz.Amacım kişilerin verilerini grafiksel olarak bir grafik üzerinde karşılaştırmak karşılaştırmak.Borsadaki grafik gibi yani birden fazla veriyi bir grafik üzerinde tutma
Aklımdan tek geçen yöntem tabledeki bir kaydı başka bir tableye aktarmak.Sonra ikinci bir kaydı başka bir tableye aktarma oluşan iki tabledeki verileri karşılaştırmak ama burada ancak iki kişiyi karşılaştırabilirim + table bolluğu olacak
Böyle bir şey yapmak için bir önerisi olan varmı.
Bir tablede kişilerin DBChart a uyan sayısal verileri var.
(Aşağıda Fikir olarak yazıyorum)
Table deki alan adlarını bir checklistbox a aktarıp buradan birden fazla kayıtı seçili yaparak tek bir DBChart üzerinde yeni series oluşturarak bu seriesler üzerinde verileri gösterebilirmiyiz.Amacım kişilerin verilerini grafiksel olarak bir grafik üzerinde karşılaştırmak karşılaştırmak.Borsadaki grafik gibi yani birden fazla veriyi bir grafik üzerinde tutma
Aklımdan tek geçen yöntem tabledeki bir kaydı başka bir tableye aktarmak.Sonra ikinci bir kaydı başka bir tableye aktarma oluşan iki tabledeki verileri karşılaştırmak ama burada ancak iki kişiyi karşılaştırabilirim + table bolluğu olacak
Böyle bir şey yapmak için bir önerisi olan varmı.
Örnek vereyim
gibi tablede kaydımız olsun.SAY1,SAY2,SAY3 alanların grafiğini çizeceğiz.Bu table yi DBChart a bağladığımızda kim seçili ise onun sayısal değerlerinin grafiğini çiziyor hali ile.
Ben istiyorum ki bu kayıtlardan iki veya daha fazlasını seçerek DBChart da bu şeçtiğim kayıtların grafiğini ayrı ayrı çizsin.Ve bu grafikte örneğin unicorn64 ile haydarxxx in değerlerini rahatlıkla karşılaştırabileyim (görebileyim)
Kod: Tümünü seç
Kayıtlar Tablesi
ADI SAYI1 SAYI2 SAYI3
unicorn64 10 20 5
şabanhocam 20 40 55
haydarxxx 5 10 5
...........
...........
Ben istiyorum ki bu kayıtlardan iki veya daha fazlasını seçerek DBChart da bu şeçtiğim kayıtların grafiğini ayrı ayrı çizsin.Ve bu grafikte örneğin unicorn64 ile haydarxxx in değerlerini rahatlıkla karşılaştırabileyim (görebileyim)
DBChart için Query kullanıp ad,soyad ve bunlara ait yanılmıyorsam sayı dediklerin notlar onlarıda sorgu ile çek....olay table ilede olur ama query daha esnek...DBchart ı bayadır kullanmıyorum ama muhtemelen sen ayarlarını yanlış yaptım...örneğin x,y ekranı için x de öğrenci adı olacak y de öğrenci notları yani doğru ayarları yapman lazım.. ama
DBChart gibi bileşenler fazla veriyi göstermek için değil ortalama alınmış veya raporlanmış bir kaç tane unsuru karşılaştırmak için kullanılır...örneğin 10 tane sınıf için bir yazılı sonucunun grafiksel başarı ortalaması için kullanabilirsin böylece sınıfları karşılaştırmış olursun....50 tane öğrenci için grafik çizdirmen görsel olarakta anlaşılır bir netice vermeyecektir.....
DBChart gibi bileşenler fazla veriyi göstermek için değil ortalama alınmış veya raporlanmış bir kaç tane unsuru karşılaştırmak için kullanılır...örneğin 10 tane sınıf için bir yazılı sonucunun grafiksel başarı ortalaması için kullanabilirsin böylece sınıfları karşılaştırmış olursun....50 tane öğrenci için grafik çizdirmen görsel olarakta anlaşılır bir netice vermeyecektir.....
Denemiştim ama Query ile gelen verileriler dbchart a tek tek gelmiyorki.Sadece o kayda uyan tek veri geliyor.Yani birden fazla grafik çzimiyor.DBChart için Query kullanıp ad,soyad ve bunlara ait yanılmıyorsam sayı dediklerin notlar onlarıda sorgu ile çek
Doğru bağlama yapıyorum zanlımca çünkü tek bir grafiği alabiliyorum.DBchart da >>Series>>Datasource>> den Single Record yada dataset üzerinden verileri getiriyorum...DBchart ı bayadır kullanmıyorum ama muhtemelen sen ayarlarını yanlış yaptım...örneğin x,y ekranı için x de öğrenci adı olacak y de öğrenci notları yani doğru ayarları yapman lazım.. ama
Dediğinde haklısın ama bir yöntemi varmıdır bilmiyorum yada bir bileşen var mı ki.DBChart gibi bileşenler fazla veriyi göstermek için değil ortalama alınmış veya raporlanmış bir kaç tane unsuru karşılaştırmak için kullanılır...örneğin 10 tane sınıf için bir yazılı sonucunun grafiksel başarı ortalaması için kullanabilirsin böylece sınıfları karşılaştırmış olursun....50 tane öğrenci için grafik çizdirmen görsel olarakta anlaşılır bir netice vermeyecektir.....
http://rapidshare.com/files/89996604/grafik.xls
link veriyorum.xls dosyasındaki gibi grafik çizdirmek istiyorum.Bunun için bir yöntem.Yada komponent varmıdır acaba.
link veriyorum.xls dosyasındaki gibi grafik çizdirmek istiyorum.Bunun için bir yöntem.Yada komponent varmıdır acaba.
http://delphi.about.com/od/usedbvcl/l/aa082101b.htm den biraz yaralandım
şekli ile IDKATEGORİ ye uyan verileri Bar grafiğine aldım.Bu koşula uyanlar DBChart a geldi Series ı Horiz bar seçtim dataset bağlantısında query bağladım Görmem gerektiğim Label ı ekledim ve grafikteki bar ın göstermesi gereken alanı seçtim Y değerini boş bıraktım.ve istediğime biraz yaklaştım.
1.Sorum
sorgu ile çektiğim kayıtların sayısı çok fazla olur ise 10,20,50....1000 gibi grafiğin bir anlamı kalmayacak.Ben sorgu ile çektiğim kayıtları seçerek örneğin 3 tanesini sen sen sen grafiğe çık.diğerleri çıkmasın nasıl yaptırtabiliriz.
2.Sorum
Burada bar ın göstermesi gereken alanları kodla nasıl düzenleyebilirim(X yada Y değerine alan adını atama).Örneğin Benim DBChart bağlantımda bar ayarım query deki YUZDE denilen alana bağlı Ben bunu kod ile SURE adındaki alana baglamak istiyorum.Böylelikle query ile her alanı sorgulayarak karşılaştırma yapma şansım olsun.
(yani series deki alan isimlerine müdahale etme mi diyeyim bilmiyorum anlaşılır yazmaya çalışıyorum ama ben yazdıkcada şumu anlaşılıyor bumu anlaşılıyor diye sorgulayıp duruyorum bu arada.
)
Kod: Tümünü seç
DataModule1.IBQuery10.Close;
DataModule1.IBQuery10.SQL.Clear;
DataModule1.IBQuery10.SQL.Add('select * from TBL_MAC where IDKATEGORI='+#39+DBEdit1.Text+#39+'' );
DataModule1.IBQuery10.open;
1.Sorum
sorgu ile çektiğim kayıtların sayısı çok fazla olur ise 10,20,50....1000 gibi grafiğin bir anlamı kalmayacak.Ben sorgu ile çektiğim kayıtları seçerek örneğin 3 tanesini sen sen sen grafiğe çık.diğerleri çıkmasın nasıl yaptırtabiliriz.
2.Sorum
Burada bar ın göstermesi gereken alanları kodla nasıl düzenleyebilirim(X yada Y değerine alan adını atama).Örneğin Benim DBChart bağlantımda bar ayarım query deki YUZDE denilen alana bağlı Ben bunu kod ile SURE adındaki alana baglamak istiyorum.Böylelikle query ile her alanı sorgulayarak karşılaştırma yapma şansım olsun.
(yani series deki alan isimlerine müdahale etme mi diyeyim bilmiyorum anlaşılır yazmaya çalışıyorum ama ben yazdıkcada şumu anlaşılıyor bumu anlaşılıyor diye sorgulayıp duruyorum bu arada.

1.soru iç.in
v.s. der isen seçtiğin kadar kayıt listelenmiş olur. Ayrıca
ile sıralamayı da yaptırarak hangi kayıtları istediğine ulaşabilirsin.
Ama sen aralardan seççem dersen o zaman ID v.s. tuttuğun bir alan var ise bunlara ulaşman ve soruguya eklemen lazım.
2. için
Şeklinde bir denermisin.
Kod: Tümünü seç
select * from yerine select TOP 3
Kod: Tümünü seç
Order by
Ama sen aralardan seççem dersen o zaman ID v.s. tuttuğun bir alan var ise bunlara ulaşman ve soruguya eklemen lazım.
2. için
Kod: Tümünü seç
DBGrafik.Series[0].DataSource:=Frmrapquery;
DBGrafik.Series[0].XValue := FrmrapqueryAlanım;
DBGrafik.Series[0].yValue := Frmrapquerydegerim;
Bir kelimenin anlamını öğretsen bile yeter..



conari teşekkür ederek ;
şeklinde denedim sql hatası alıyorum.
)
şeklinde.Burada sorgum DataModule1.IBQuery10 üzerinden olduğu için ne yazacağım Frmrap dan sonrası.ben bu şekilde yazdım.
select * from yerine select TOP 3
Kod: Tümünü seç
DataModule1.IBQuery10.Close;
DataModule1.IBQuery10.SQL.Clear;
DataModule1.IBQuery10.SQL.Add('select TOP 3 TBL_MAC where IDKATEGORI='+#39+DBEdit1.Text+#39+'' );
DataModule1.IBQuery10.open;
Buradaki sorgu nasıl olabilir kullanıcı kendisi seçecek.Yani örnek veririsek tabledeki yada querydeki kayıtları CheckListBox a aktarıp işaretlediğimiz kayıtları grafikte göstermek şeklinde aklımdan geçiyor.(ama nasılAma sen aralardan seççem dersen o zaman ID v.s. tuttuğun bir alan var ise bunlara ulaşman ve soruguya eklemen lazım.

değişiklik yaparak yazdım ama olmadı.DBGrafik.Series[0].DataSource:=Frmrapquery;
DBGrafik.Series[0].XValue := FrmrapqueryAlanım;
DBGrafik.Series[0].yValue := Frmrapquerydegerim;
Kod: Tümünü seç
DBChart1.Series[0].DataSource:=FrmrapDataModule1.IBQuery10;
DBChart1.Series[0].XValue := FrmrapDataModule1.IBquery10YUZDE;
DBChart1.Series[0].yValue := FrmrapDataModule1.IBquery10TOPTUTMA;
Kod: Tümünü seç
'select TOP 3 TBL_MAC where IDKATEGORI='+#39+DBEdit1.Text+#39+'' );
Kod: Tümünü seç
'select TOP 3 * from TBL_MAC where IDKATEGORI='+#39+DBEdit1.Text+#39+'' );
frmrap değişken querynin adı

Senin
Kod: Tümünü seç
DBChart1.Series[0].yValue :=DataModule1.IBquery10TOPTUTMA;
Bunu denemiş değilim bilgin olsun.
Bir kelimenin anlamını öğretsen bile yeter..


