C3: Hanya bilangan bulat pada sumbu Y

Dibuat pada 30 Apr 2015  ·  6Komentar  ·  Sumber: c3js/c3

Hai, rentang Y hanya 0-5: jadi grafik dirender secara otomatis 2 hal yang tidak saya perlukan:

  • nilai pecahan: 1,5, 2,5
  • nilai negatif -0,5

Bagaimana cara menghindari keduanya?

Komentar yang paling membantu

ya, itu berfungsi tetapi masih menunjukkan tanda centang untuk nilai-nilai mengambang itu. Jadi saya pikir opsi ini hanya menyembunyikan label untuk nilai mengambang:

screenshot from 2017-08-01 12 04 32

Bagaimana saya bisa berhenti membuatnya? yaitu tidak hanya menyembunyikan label.

Berikut adalah kode lengkap yang saya gunakan:

c3.generate({
    bindto: '#user-reg-linechart',
    data: {
        x: 'x',
        columns: [
            registrationDates,
            registrationCount
        ]
    },
    axis: {
        x: {
            type: 'timeseries',
            tick: {
                format: '%Y-%m-%d'
            }
        },
        y: {
            min: 0,
            tick: {
                format: d3.format('d')
            },
            padding: {top: 0, bottom: 0}
        }
    }
});

Semua 6 komentar

Saya memecahkan masalah nilai pecahan saya dengan

tick: {
    format: function(d) {
        return d3.round(d); //this wil round the number (1.5 will be rounded to 1)
    }
}

Tetapi Anda harus mencoba menggunakan fungsi format d3.format("d")
Info lebih lanjut di sini di dokumentasi pemformatan d3

Salam

itu memang bekerja dengan
tick: { format: d3.format("d") }

Terima kasih

ya, itu berfungsi tetapi masih menunjukkan tanda centang untuk nilai-nilai mengambang itu. Jadi saya pikir opsi ini hanya menyembunyikan label untuk nilai mengambang:

screenshot from 2017-08-01 12 04 32

Bagaimana saya bisa berhenti membuatnya? yaitu tidak hanya menyembunyikan label.

Berikut adalah kode lengkap yang saya gunakan:

c3.generate({
    bindto: '#user-reg-linechart',
    data: {
        x: 'x',
        columns: [
            registrationDates,
            registrationCount
        ]
    },
    axis: {
        x: {
            type: 'timeseries',
            tick: {
                format: '%Y-%m-%d'
            }
        },
        y: {
            min: 0,
            tick: {
                format: d3.format('d')
            },
            padding: {top: 0, bottom: 0}
        }
    }
});

@ ParthVora777 Apakah Anda menemukan solusi Anda?

Saya menghadapi masalah yang sama seperti yang ditunjukkan @ParthVora777 . Apakah ada yang punya solusi?

        tick: {
          // format: d3.format('d')
          format: function(d) {
            if (Math.floor(d) != d){
              return;
            }
            return d;
          }
        },

Ini mengubah sumbu Y grafik saya terlihat seperti:

image

Ref: https://stackoverflow.com/questions/12643591/how-to-limit-d3-svg-axis-to-integer-labels

Apakah halaman ini membantu?
0 / 5 - 0 peringkat