added chart generation