Veri almak ve bir grafik atmak için en iyi yolu?

7 Cevap php

Ben neredeyse tam altındaki birine benzer olacak bir tablodan veri almak istiyorum, ama bir çizgi grafiği var. Tarih değerleri Y-ekseni üzerinde olacak, ve X-ekseni üzerinde XP değerlerini çizmek istiyorum. Her kullanıcı için numaralar değişir yana, ben her bir nokta arasındaki mesafe "göreli" çizilen yapmak için bir yol gerekiyordu, sanırım.

Example table

Herhangi bir öneriniz?

7 Cevap

Eğer PHP için Libchart veya pChart kullanabilirsiniz grafiğin statik bir görüntü oluşturmak istiyorsanız.

O değil hale tablo, veri kaynağından veri almak daha iyidir. Neyse iki ayrı soru var: bir grafik çizmek için nasıl bir tablodan veri almak için ve nasıl.

PHP bir grafik çizim oldukça kolaydır. HTML / CSS çubuk uzunluğunu hesaplamak için bir bar ve PHP çizmek için kullanılabilir.

Yoksa, JavaScript yol gitmek istiyorum belki Raphaël.

I HighCharts için giderdim.

Eğer bir Linux / Unix platformu kullanarak yapıyorsanız, muhtemelen Gnuplot yüklü. Gnuplot böylece, bir komplo dosyası ve bir veri dosyası almak ve bir görüntü oluşturabilir:

Ilk olarak elde edilmesi gerekmektedir History.gnuplot:

set title "Rawr_satch history"
set xlabel "Time"
set ylabel "Ranking"
set output "rawr_satch_graph.png"
set terminal png color
set xdata time
plot "rawr_satch_xphistory.dat" with linespoints

: Böylece biçimlendirilmiş bir veri dosyası rawr_satch_xphistory.dat zaten oluşturulmuş olan, varsayar

2010-03-06 385581123
2010-03-05 384895430
2010-03-04 382983388

İnsanlar aynı zamanda, örneğin, çoğu dil için gnuplot'a içine arayüzleri yazdım PHP-GNUPlot. Gnuplot betikleri oldukça karmaşık olabilir, ve vb, birden çok değişkeni arsa olabilir

Ben kullanmak ve tam Google Chart Tools API öneririz. Eğer basit bir çizgi grafiği için arıyorsanız, onlar hiçbir kurulum veya yapılandırma gerektirir aramak çok basit bir API sağlar. Belgelerin bazı kafa karıştırıcı, ama sabır biraz ile onu anlamaya mümkün oldum.

Gerekli olduğunu bütün bir IMG etiketi ve doğru parametreleri ile Google URL src etmektedir.

alt metni

Daha sonra daha fazla işlevsellik sağlamak istiyorsanız onlar da bir daha interactive Javascript kütüphanesi var.

Ben PHP aşağıdaki kullandım: Google Charts, Open Flash Chart, YUI charts (Flash), ve AMCharts (ayrıca Flaş).

Hepsi kullanımı oldukça kolaydır ve tüm artıları ve eksileri var. Eğer bir sayfada tek bir grafiğin daha göstermek istiyorsanız, Flash tabanlı grafikler kullanmayın. Bu tarayıcılar sorun her seferde bir düzine Flaş grafikler görüntüleyen sahip çıkıyor. AMCharts muhtemelen en zengin özellik, ancak mevcut seçenekler seçmek onların grafik paketlerinin hangi bağlıdır, ve yapılandırma oldukça karmaşıktır.