Here is the best option that I've found so far:
mytable<-read.delim("mytable.csv",sep=",",header=T)
mytable$ln<-log(mytable$count)
mytable#count<-NULL
mytable
"bio","twit","ln"
"ar","ar",13.7194907264167
"ar","bg",4.56434819146784
"ar","bo",4.29045944114839
"ar","chr",0.693147180559945
"ar","da",4.11087386417331
"ar","de",7.15617663748062
"ar","el",4.43081679884331
"ar","en",10.2423497879763
"ar","es",7.07157336421153
"ar","et",6.86901445066571
"ar","fa",10.1637341918018
"ar","fi",4.60517018598809
"ar","fr",6.63987583382654
"ar","he",2.89037175789616
"ar","hi",0
"ar","ht",6.94312242281943
"ar","hu",5.58724865840025
"ar","hy",2.83321334405622
"ar","id",8.10349427838097
"ar","is",3.13549421592915
"ar","it",5.5683445037611
"ar","iu",0
"ar","ja",5.57972982598622
"ar","ka",3.8286413964891
"ar","ko",5.99146454710798
"ar","lt",3.76120011569356
"ar","lv",5.07517381523383
"ar","my",0
"ar","nl",7.33888813383888
"ar","no",3.3322045101752
"ar","NONE",13.2327627765388
"ar","pl",6.22851100359118
"ar","pt",6.74170069465205
"ar","ru",6.3578422665081
"ar","sk",5.91079664404053
"ar","sl",5.73334127689775
"ar","sv",4.84418708645859
"ar","ta",0
"ar","th",2.19722457733622
"ar","tl",6.81454289725996
"ar","tr",6.37161184723186
"ar","uk",1.09861228866811
"ar","und",10.7549410519963
"ar","ur",8.77940359789435
"ar","vi",7.71646080017636
"ar","zh",2.83321334405622
"ca","ar",2.56494935746154
"ca","bg",0
"ca","da",3.29583686600433
"ca","de",4.60517018598809
"ca","en",6.85224256905188
"ca","es",9.08704215563169
"ca","et",4.02535169073515
"ca","fi",2.70805020110221
"ca","fr",6.81563999007433
"ca","ht",4.57471097850338
"ca","hu",4.15888308335967
"ca","id",4.56434819146784
"ca","is",2.07944154167984
"ca","it",6.32076829425058
"ca","ja",2.484906649788
"ca","ko",0.693147180559945
"ca","lt",2.56494935746154
"ca","lv",4.06044301054642
"ca","nl",3.85014760171006
"ca","no",1.79175946922805
"ca","NONE",8.95273476710687
"ca","pl",3.25809653802148
"ca","pt",6.93925394604151
"ca","ru",2.30258509299405
"ca","sk",4.12713438504509
"ca","sl",4.04305126783455
"ca","sv",3.46573590279973
"ca","tl",4.53259949315326
"ca","tr",3.66356164612965
"ca","und",5.61677109766657
"ca","vi",3.97029191355212
"cs","ar",2.63905732961526
"cs","bg",3.49650756146648
"cs","da",0
"cs","de",4.15888308335967
"cs","en",7.45529848568329
"cs","es",5.08759633523238
"cs","et",3.85014760171006
"cs","fi",1.79175946922805
"cs","fr",3.66356164612965
"cs","ht",3.29583686600433
"cs","hu",3.3322045101752
"cs","id",3.40119738166216
"cs","is",0.693147180559945
"cs","it",3.40119738166216
"cs","ja",1.6094379124341
"cs","lt",2.484906649788
"cs","lv",3.25809653802148
"cs","nl",2.89037175789616
"cs","NONE",6.67203294546107
"cs","pl",4.34380542185368
"cs","pt",4.45434729625351
"cs","ru",5.90263333340137
"cs","sk",7.31121838441963
"cs","sl",4.4188406077966
"cs","sv",0.693147180559945
"cs","tl",3.25809653802148
"cs","tr",2.77258872223978
"cs","uk",0
"cs","und",5.2257466737132
"cs","vi",4.0943445622221
"cs","zh",1.09861228866811
Xmytable<-xtabs(mytable$ln ~ mytable$lang1 + mytable$lang2, mytable)
library(pheatmap)
pheatmap(Xmytable, cluster_rows=T)
I'd like to add an option using ggplot(), which seems to require use of kmeans. However, I haven't been able to apply kmeans to this dataset due to the fact that I have non-numeric values, which is why the link shared above doesn't really answer the question for this situation (it's a useful link for heatmaps in general though).