add chart generation