[{"data":1,"prerenderedAt":211},["ShallowReactive",2],{"project-37260913":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":28,"sentiment":29,"stance_mix":30,"scored_comments":33,"aspects":34,"strip":39,"post_text":42,"what":43,"said":76,"maker_in_thread":128,"shape":138,"grid":142,"attempts":175,"same_week":176,"maker_shows":202,"maker_hidden":203,"reader_version":204,"card":205},"37260913","PlotAI","Create Plots in Python and Matplotlib with LLM","title","Show HN: PlotAI – Create Plots in Python and Matplotlib with LLM","https:\u002F\u002Fgithub.com\u002Fmljar\u002Fplotai","github.com","pplonski86",1692966359,2023,51,13,1059,3109,35,"notable","dev_tools","plotting library","library",[24,25,26,27],"matplotlib","python plotting","llm plots","pandas visualization","mixed",0.036,{"positive":31,"neutral":31,"mixed":32,"critical":32},2,1,6,{"idea":35,"execution":37,"design":38},{"positive":36,"critical":32},0,{"positive":32,"critical":36},{"positive":36,"critical":36},[36,32,40,36,41,36,40,41,36,40,36,36,36],3,5,null,{"problem":44,"audience":51,"pricing":42,"motivation":42,"time_to_build":42,"stack":55,"openness":75,"stage":75,"team_size":75},{"value":45,"source":46,"evidence":47},"Creating plots in Python and matplotlib requires writing plotting code","maker",[48],{"id":49,"by":11,"text":50},"37262535","The easiest way to create plots in Python and Matplotlib. The plotai is using LLM to generate code and plots. The idea: 1. User provides input DataFrame and prompt. 2. The PlotAI…",{"value":52,"source":46,"evidence":53},"Python users working with pandas DataFrames in scripts and notebooks",[54],{"id":49,"by":11,"text":50},[56,60,63,67],{"value":57,"source":46,"evidence":58},"Python",[59],{"id":49,"by":11,"text":50},{"value":24,"source":46,"evidence":61},[62],{"id":49,"by":11,"text":50},{"value":64,"source":46,"evidence":65},"pandas",[66],{"id":49,"by":11,"text":50},{"value":68,"source":69,"evidence":70},"OpenAI LLM","commenter",[71],{"id":72,"by":73,"text":74},"37264674","bfeynman","Again, just a trivial wrapper over open ai, which already does this very well. But seems to not have any real benefits other than not needing to move mouse. You don't need to…","unknown",{"praise":77,"objections":86,"requests":95,"questions":107,"alternatives":112},[78],{"value":79,"source":69,"evidence":80},"Simple one-method API and content-aware edits",[81,82],{"id":49,"by":11,"text":50},{"id":83,"by":84,"text":85},"37262554","jncfhnb","Is the LLM looking at the properties of the data frame under the hood in addition to reading the prompt? That’s kind of cool. Edit: the content aware edits are very cool. I could…",[87,91],{"value":88,"source":69,"evidence":89},"Just a thin wrapper over OpenAI that adds little value",[90],{"id":72,"by":73,"text":74},{"value":92,"source":69,"evidence":93},"Sending data to OpenAI is a problem for businesses",[94],{"id":72,"by":73,"text":74},[96,103],{"value":97,"source":69,"evidence":98},"Support swapping in other LLMs such as Code Llama",[99],{"id":100,"by":101,"text":102},"37265251","lappa","This is great! If I could suggest changes that would make this especially useful for me and likely others it would be 1) The ability to substitute in your own LLM, specifically…",{"value":104,"source":69,"evidence":105},"Automatically pick plot type from metadata",[106],{"id":100,"by":101,"text":102},[108],{"value":109,"source":69,"evidence":110},"Whether the LLM sees data frame properties beyond the prompt",[111],{"id":83,"by":84,"text":85},[113,120,124],{"value":114,"source":69,"evidence":115},"Vega-Lite and Altair",[116],{"id":117,"by":118,"text":119},"37265965","westurner","Vega and Vega-lite visualization grammars: https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FVega_and_Vega-Lite_visualisation_grammars FWIU Vega\u002Fvoyager suggests similar charts with CompassQL:…",{"value":121,"source":69,"evidence":122},"mpld3",[123],{"id":117,"by":118,"text":119},{"value":125,"source":69,"evidence":126},"Vega Voyager",[127],{"id":117,"by":118,"text":119},{"comments":129,"answered":32,"key":130},4,[131,132,135],{"id":49,"text":50},{"id":133,"text":134},"37263067","The LLM has access to user prompt, 5 first rows of DataFrame and template prompt (for example with sentence 'Output only Python code in response'). I was very surprised with…",{"id":136,"text":137},"37272314","Hey! Thank you. I appreciate you response! That was wild run. Emotional roller coaster. Anyway, I made mljar AutoML open source, it is available in our github…",{"commenters":139,"max_depth":129,"maker_replies":129,"first_comment_mins":140,"lifespan_hours":141},8,160,24,[143,145,147,149,151,153,155,158,162,163,166,169,172],[117,36,36,144,118,36],"other\u002Fneutral\u002Fnone",[72,32,32,146,73,36],"project\u002Fcritical\u002Fidea",[100,31,40,148,101,36],"project\u002Fmixed\u002Fidea",[49,40,36,150,11,32],"project\u002Fneutral\u002Fidea",[83,40,41,152,84,36],"project\u002Fpositive\u002Fexecution",[133,40,36,154,11,32],"project\u002Fpositive\u002Fperformance",[156,40,40,157,84,36],"37265274","maker\u002Fneutral\u002Fexecution",[159,129,41,160,161,36],"37269723","maker\u002Fpositive\u002Fnone","JPKab",[136,129,36,144,11,32],[164,41,40,165,84,36],"37262536","project\u002Fneutral\u002Fdesign",[167,41,36,168,11,32],"37263074","maker\u002Fneutral\u002Fdesign",[170,41,36,144,171,36],"37263364","bagels",[173,41,36,144,174,36],"37264520","baq",[],[177,181,186,191,195,199],{"id":178,"name":179,"points":180,"category":20},"37326870","compress",815,{"id":182,"name":183,"points":184,"category":185},"37247767","obsidian-sync",416,"infrastructure",{"id":187,"name":188,"points":189,"category":190},"37252231","Shimmer",229,"consumer_social",{"id":192,"name":193,"points":194,"category":20},"37251969","Continue",187,{"id":196,"name":197,"points":198,"category":185},"37263473","Release AI",143,{"id":200,"name":201,"points":198,"category":20},"37310070","Langfuse",14,false,"v2",{"id":206,"name":5,"line":6,"ai":203,"cat":20,"year":13,"points":14,"comments":15,"rec":28,"s":207,"top":18,"kw":208,"maker":11,"domain":10,"tier":19,"attempts":36,"strip":209,"url":9,"mix":210,"praise":79,"objection":88,"sub":21},37260913,0.04,[24,25,26,27],"0130503503000",[31,31,32,32],1794036640707]